In de editor breng je je tijd in Caliu door, dus daar gaat de meeste zorg naartoe. Elke app heeft zijn eigen editor, gebouwd op de teksttechnologie van zijn platform, en ze delen allemaal één belofte: wat wordt opgeslagen is gewone Markdown, en wat je ziet is die Markdown, ter plekke opgemaakt terwijl je typt.
Eén kringloop, drie editors
Elke Caliu-editor doet dezelfde drie dingen:
- Lezen: de Markdown van de notitie inlezen en de structuur ervan bepalen (koppen, lijsten, taken, citaten, code, tabellen).
- Tonen: die structuur weergeven als opgemaakte tekst en de syntaxis verbergen tot je die nodig hebt.
- Schrijven: je bewerkingen terugschrijven als Markdown, dezelfde gewone tekst die elke andere Markdown-app kan lezen.
Een notitie openen verandert haar nooit. Een notitie verandert alleen als je haar bewerkt, dus een notitie lezen op een ander apparaat herschrijft haar nooit achter je rug om.
Op het web: ProseMirror
De webeditor is gebouwd op Tiptap, dat bovenop ProseMirror zit, een toolkit voor rich-text-bewerking in de browser die door veel bekende schrijftools wordt gebruikt. Codeblokken worden ingekleurd met Shiki, dezelfde highlighter die veel code-editors gebruiken.
Op iPhone, iPad en Mac: Apples eigen tekstsysteem
De Apple-editor is rechtstreeks gebouwd op Apples native tekstweergave (UITextView op iPhone en iPad, NSTextView op de Mac) en op TextKit, de tekstengine achter Apples eigen apps. Markdown wordt gelezen met Apples bibliotheek swift-markdown, die dezelfde specificatie volgt als GitHub, en teruggeschreven met je oorspronkelijke keuzes intact: als je *italic* schreef in plaats van _italic_, blijft dat zo.
De hele notitie is één doorlopende tekstweergave. Daardoor voelen selecteren, scrollen en bewerken over alinea's heen natuurlijk aan. Wat geen gewone tekst is, zoals tabellen en codeblokken, wordt als eigen weergave over de tekst heen getekend.
Op Android: het tekstveld van het platform
De Android-editor is gebouwd op het eigen tekstveld van Android, dat wordt opgemaakt terwijl je typt. Markdown wordt gelezen met commonmark-java en getoetst aan dezelfde referentie als de Apple-app. Honderden voorbeelddocumenten moeten de Android-editor precies zo verlaten als ze erin gingen, net zoals op Apple-apparaten.
Waarom native tekst ertoe doet
Tekstbewerking is een van de moeilijkste dingen om als app goed te doen. Door te bouwen op de eigen tekstengine van elk platform in plaats van er zelf een te verzinnen, krijgt Caliu alles wat je apparaat al kan: autocorrectie en spellingcontrole, dicteren, invoermethoden voor Japans, Chinees en Koreaans, schermlezers zoals VoiceOver en TalkBack, en de selectiegrepen en sneltoetsen die je gewend bent.
De Markdown zien
Wil je zien wat er echt is opgeslagen, schakel dan over naar de bronmodus. Die toont de ruwe Markdown, elke # en * inbegrepen, en je kunt hem daar ook bewerken. Zie het artikel "Bronmodus".