Samstag, 27. September 2014

La markolingvo markdaŭno (Markdown)

Markolingvoj

La vorto markdaŭno devenas de la angla Markdown. Ĝi estas markolingvo — sed kio je diablo estas markolingvo?

La plej simpla speco de teksto estas … teksto, kiu enhavas neniujn ekstrajn informojn krom la teksto mem. Oni nomas tiun "plata teksto". Plata teksto ne enhavas strukturajn aŭ priskribajn aldonaĵojn. Vi ne vidas per la unua rigardo, kio estas titolo aŭ eble nur mallonga frazo, vi ne povas indiki listojn, kaj vi tute ne havas eblecon por skribi ion grase. En plata teksto mi kutime uzas steletojn antaŭ kaj post la vorto por emfazi ĝin, sed tio estas mia privata maniero. Simile funkcias markolingvoj. Oni markas vortojn aŭ tekstopecojn per sintaksaj indikiloj. Markolingvojn oni devas konverti al aliaj dosierformoj aŭ vidigi per ekstraj programoj, por ke homoj povu legi kaj kompreni ilin.

Ekzistas ekzemple HTML, kio estas markolingvo: ML signifas Markup Language = markolingvo. HTML nuntempe estas sufiĉe komplika. En HTML vi markas unuarangan titolon per

<h1>Titolo</h1>

aŭ grasan vorton per

<b>grasa</b>.

La programo, kiu vidigas HTML-dosierojn, estas la retumilo - jes, ĝuste tiu programo, kiun vi ĵus uzas. La teksto, kiun vi havigis al vi el interreto, estas HTML-dosiero. Vi petis alsendon de interreta paĝo, la servilo sendis HTML-dosieron, kaj la retumilo nun interpretas la enhavon de la dosiero kaj montras ĝin sur ekrano. Tiel funkcias la interreto.

Markdaŭno

Por faciligi la formatadon de tekstoj oni kreis markolingvojn kun simplaj sintaksoj, kaj la tekstojn skribitajn en tiu sintakso oni konvertas ekzemple al HTML per iu malgranda programo. Tiuj sintaksoj estas pli facile memoreblaj ol HTML. Unu el tiuj markolingvoj estas markdaŭno (Markdown), kiun inventis John Gruber in 2004. Markdaŭno estas nomo kaj de la sintakso kaj de la programo, kiu konvertas tekstojn skribitajn kun tiu sintakso al aliaj dosierformoj. 

Markdaŭnaj tekstoj do estas facile legeblaj de homoj kaj tamen ebligas la uzon de multaj eblecoj de HTML, se necese. Tial ĝi estiĝis kvazaŭa normo por la verkado de dokumentaĵoj kaj »legu-min«-tekstoj. Ĝi estas uzita ankaŭ por arkivado, ĉar ĝi estas home legebla, kaj per programoj oni konvertas la tekstojn al HTML-, RTF-, PDF- kaj eĉ al LaTeX-dosieroj.

Aŭtoroj kaj blogistoj uzas ĝin, kaj ankaŭ mi nun verkas miajn blogerojn, uzante markdaŭnon.

Vi povas skribi titolon tiel:

# Titolo

aŭ tiel:

Titolo
======

el kio estiĝas:

Titolo

Por skribi grasajn leterojn, vi aldonas antaŭ kaj post la koncerna vorto du steletojn **grasa**: grasa.

Ekzistas diversaj markdaŭnaj lingvoj, certasence dialektoj, kiuj etendis la originan amplekson de markiloj. Unu el tiuj estas Github-markdaŭno, alia nomiĝas multi-markdaŭno (Multimarkdown). Tiun lastan kreis Fletcher Penney, kaj ĝi estas la taŭga ilo por verkado ankaŭ de fakaj tekstoj. Okulfrapa diferenco inter la origina kaj la etenditaj markdaŭnaj lingvoj estas la ebleco enmeti tabelojn. La originala markdaŭno ne povas tion. En multi-markdaŭno kaj aliaj markdaŭnaj lingvoj vi simple uzas vertikalajn strekojn por indiki tabelajn kolonojn:

|Kolono A |Kolono B |
|---------|---------|
|Linio 1|Linio 2|
|Linio 3|Linio 4|

kio estas konvertita al HTML kaj vidigita per komputila ekrano tiel:


Kolono AKolono B
Linio 1Linio 2
Linio 3Linio 4

Ne timu, mi ne prezentos la tutan sintakson ĉi tie. Vi trovas en interreto la anglan priskribon por markdaŭno kaj por multi-markdaŭno, se tio interesas vin. Kompreneble vi povas uzi vikipedion por serĉi priskribon en via lingvo.

Markdaŭno kaj speciale multi-markdaŭno subtenas la enmeton de krucreferencoj, interretaj ligiloj kaj piednotoj. Markdaŭno ne ofertas la saman amplekson de tekstomarkado kiel teksto- aŭ HTML-redaktilo, sed sufiĉas por multaj taskoj de teknikista, sciencista, ĵurnalista kaj aŭtora verkadoj. 

La avantaĝoj de markdaŭno estas laŭ Brett Terpstra:


  • Ĝi estas simpla. La sintakso estas tiel simpla, ke oni apenaŭ povas nomi ĝin sintakso.
  • Ĝi estas rapida, ĉar oni ŝparas tempon kompare al mane aldonitaj HTML-etikedoj kaj ofte eĉ kompare al plenblovita tekstoredaktilo.
  • Ĝi evitas erarojn, ĉar post la konvertado el markdaŭno estiĝas perfekte formatitaj HTML-dosieroj sen mankantaj fermantaj etikedoj, nepermesita nestigado kaj aliaj HTML-eraroj. Estiĝas pura, senerare formatita teksto.
  • Ĝi estas portebla inter mastrumaj sistemoj. Oni povas modifi ilin per iu ajn redaktilo sur iu ajn mastruma sistemo. 
  • La eligo estas fleksebla, oni povas ĝin adapti al diversaj cirkonstancoj, konverti al diversaj dosierformoj kaj importi al tekstoaranĝaj redaktiloj. 
  • Oni povas akordigi ĝin al ĉiaj, sed ĉefe aŭtoraj laborfluoj, ĉar esence ĝi restas tre proksime al plata teksto. (Striktasence markdaŭnaj tekstoj kompreneble ne estas plattekstaj.)
Kaj la malavantaĝo? Ĉar la sintaksa kodo estas skribita en la plata teksto mem, vi ne scias, kiel la teksto en la celo-formo aspektos. Tial ekzistas helpemaj redaktiloj:



Redaktiloj

Ekzistas diversaj redaktiloj por markdaŭno. Unu ebleco estas simpla plat-teksta redaktilo. Pli komfortaj estas markdaŭnaj redaktiloj, kiuj disdividas la ekranon je du fenestroj. En unu (kutime la maldekstra) oni tajpas, en la dua oni vidas la rezultan tekston post la konvertado al HTML. La redaktilo plenumas tujan (realtempan) interpreton de la markdaŭna teksto, krom tio ĝi kolorigas la sintaksajn unuojn en la redakta fenestro, ĉi tie per ruĝa koloro.

Sub vindozo la nombro de markdaŭnaj redaktiloj estas malgranda (ekzemple CuteMarkEd, Haroopad), sub linukso ekzistas pliaj redaktiloj kiel Retext kaj Remarkable. Ubertext ŝajnas al mi ankoraŭ nematura.

Makintoŝo (OS X) ŝajnas vera paradizo por aŭtoroj pro siaj elstaraj programoj. Ne havante tian maŝinon, mi ne povas detale reporti pri tiuj.

Mi konas redaktilojn por androido kaj vindozfono, kaj certe iuj ekzistas ankaŭ por iOS.

Alternativo estas redaktiloj kiel kromprogrametoj de retumiloj (Markdown Here por Firefox, Stackedit por Guglo Chrome) kaj interretaj redaktiloj. Interrete funkcias la jam nomita Stackedit (http://www.stackedit.io), Dillinger (http://www.dillinger.io), pioul.fr (http://markdown.pioul.fr/) kaj aliaj. Ili ĉiuj laboras per dividitaj fenestroj kun tuja interpretado. Mi rekomendas tiujn al vi, se vi volas elprovi markdaŭnon.



Scrivener

Mi jam menciis, ke makintoŝo estas programara paradizo por verkistoj. Unu el la elstaraj programoj estas Scrivener, kiu estas havebla por makintoŝo jam delonge, nun ankaŭ por vindozo, kaj por linukso ekzistas provprogramo.

Scrivener estas pli ol nura redaktilo aŭ tekstoprogramo. Ĝi helpas kolekti kaj ordigi informojn, dismeti en pecoj vian estontan verkon, priskribi personojn kaj lokojn, prezentas ĉiujn erojn de projekto dispozicie laŭ arbovido kaj fine elsputas vian verko en diversaj dosierformoj. Pro tiu amplekseco ĝi estas — almenaŭ komence — malfacile regebla kaj komprenebla. Sed kompreninte la filozofion de la programo, vi havos centron de ideoj, faktoj kaj verkoj, tute egale, kion vi skribas, ĉu blogerojn, artikolojn, librojn, serion da libroj. Scrivener enhavas normalen tajp-redaktilon, kaj vi povas skribi per ĝi en markdaŭno (tiel, kiel mi nun). Kelkajn specialajn signojn ĝi automate ŝanĝas (inter alie ĝi mem metas ĝustajn citilojn), eĉ anstataŭigas literojn skribitajn laŭ x-konvencio per unikodaj Esperanto-literoj. La markdaŭnan tekston Scrivener konvertas (eldonas, kompilas) inter alie al LaTeX kaj HTML. Mi do skribas mian blogeron en Scrivener kun markdaŭna sintakso kaj eldonas ĝin kiel HTML-dosieron, tiam prenas la HTML-dosieron kaj kopias la enhavon en mian blog-redaktilon — fino. Jam mi havas bele aranĝitan blogeron sen skribi eĉ nur unu HTML-etikedon en mia teksto.