Color scheme: Riviera
You are here: start » sl » Dokumentacija » Razširitve DokuWikija (WvdS) » Zamenjani paketi in stari ID-ji strani » Markdown (wvdsmd)

Markdown (wvdsmd)

Vtičnik: lib/plugins/wvdsmd (GPL 2) · Pogon: wvdsdwmd (prevzet iz WvdS-DW-Suite; na tej namestitvi nima lastne strani) · Avtor: Wolfgang van der Stille Wolfgang.van.der.Stille@gmail.com (The White Knight Labs)

Markdown v wikiju: avtorski del za pisanje in pogon pod njim, držana narazen – kdo ima katero nalogo in zakaj ločitev ostaja.

Avtorstvo Markdown po zgledu vtičnika WordPress »Ultimate Markdown«, v celoti prilagojeno DokuWiki. Temeljna odločitev (preverjena glede na inc/pageutils.php te različice): .txt ostaja kanonična datoteka – wikiFN()/page_exists()/attic/dnevnik sprememb so ožičeni na .txt brez dogodkovnega šiva; .md kot edina datoteka bi podrl zgodovino in preverjanje obstoja. Markdown je zato oblika zapisa za avtorstvo, ne za shranjevanje.

Delovanje

  • Samodejno zaznavanje: prva vrstica <!DOCTYPE markdown> označi stran kot stran Markdown. PARSER_WIKITEXT_PREPROCESS vsebino pregledno zavije v način <markdown> pogona wvdsdwmd (en interni pogon: Parsedown + sanitizer + front matter + link bridge). Brez wvdsdwmd se stran izriše kot navaden wikitekst (brez napak).
  • Urejevalnik: na pogledih urejanja strani Markdown vtičnik naloži vključeni EasyMDE (MIT, brez povezave) in nadomesti polje z besedilom; vrstica z oznako je v urejevalniku nevidna in se ob shranjevanju znova doda na začetek. Potek shranjevanja/osnutka DokuWiki ostane nespremenjen; brez JS deluje običajno polje z besedilom.
  • Uvoz: Skrbništvo → »Markdown Documents«: nalaganje .md (večkratno, ≤ 1 MB/datoteko), ciljni imenski prostor; YAML front matter id/title se uporabi; shranjevanje poteka prek saveWikiText() ⇒ zgodovina/attic delujeta normalno.
  • Izvoz: posamezna stran kot prenos .md (oznaka odstranjena, brezizgubni krožni prenos) ali imenski prostor kot ZIP (zahteva razširitev PHP zip). Izvoziti je mogoče le strani Markdown – pretvorba wiki sintakse v Markdown namerno ni cilj.
  • Brez vmesnika (headless): plugin.wvdsmd.importDocument(id, mdText, summary) / plugin.wvdsmd.exportDocument(id) prek oddaljenega API.

Pravice

Skrbniška stran je na voljo tudi upravljavcem (orodje za vsebino); za vsako stran velja običajen ACL – uveljavljen v pomočniku: uvoz zahteva EDIT na obstoječih oziroma CREATE na novih straneh (enakost z jedrom), izvoz zahteva READ. id v front matterju sme preusmeriti le znotraj izbranega ciljnega imenskega prostora (utrjevanje pred confused-deputy napadom). Omejitve nalaganja: 50 datotek/zahtevo, 1 MB/datoteko.

Prevzem wvdsdwmd

wvdsdwmd izvira iz repozitorija wk-dw-md-plugin (devops.wvds.it). Povezava z registrom je duck-typed no-op, vendar upodabljalni vmesnik (MarkdownRenderer extends Contract) ob prevajanju potrebuje wkcore – zato je wkcore (repozitorij wk-dw-core-plugin) nameščen skupaj z njim; hkrati je to osnova 1. plasti za poznejšo sinhronizacijo instanc (AP13). Stari vtičnik mdpage je onemogočen (podvojena registracija <markdown>). Popravek združljivosti Librarian: namig za tip dokuwiki\Parsing\Handler → Doku_Handler v syntax.php (razred v različici 2025-05-14b še ne obstaja; brez popravka vsako neuposredovano razčlenjevanje vrže E_COMPILE_ERROR). Ob posodobitvah iz repozitorija popravek znova uveljavite ali ga različičite navzgor po verigi.

sl/wiki/dwe/legacy/wvdsmd.txt · Last modified: by Wolfgang van der Stille