Markdown - Markdown
Internetes média típusa | text/markdown |
---|---|
Egységes típusazonosító (UTI) | net.daringfireball.markdown |
Által kifejlesztett | John Gruber és Aaron Swartz |
Első kiadás | 2004. március 19. |
Legutolsó kiadás | 1.0.1 (2004. december 17. ) |
Formátum típusa | Jelölőnyelv |
Kiterjesztve | pandoc , MultiMarkdown , Markdown Extra , CommonMark , RMarkdown |
Nyitott formátum ? | Igen |
Weboldal | daringfireball |
Árleszállítás egy könnyű jelölőnyelv létrehozása formázott szöveget egy egyszerű szövegszerkesztőt . John Gruber és Aaron Swartz 2004 -ben hozták létre a Markdown -ot jelölőnyelvként , amely forráskód formájában vonzó az emberi olvasók számára. A Markdown -ot széles körben használják a blogolásban , az azonnali üzenetküldésben , az online fórumokon , az együttműködési szoftverekben , a dokumentációs oldalakon és a readme fájlokban .
A Markdown kezdeti leírása kétértelműségeket tartalmazott, és megválaszolatlan kérdéseket vetett fel. E problémák kijavítására a későbbi implementációk finom különbségeket vezettek be az eredeti verzióhoz képest, valamint szintaxisbővítményeket.
Történelem
2002 -ben Aaron Swartz megalkotta az atx -t, az "igazi strukturált szövegformátumot". Swartz és John Gruber 2004-ben együtt dolgoztak a Markdown nyelv megalkotásán, azzal a céllal, hogy lehetővé tegyék az emberek számára, hogy "könnyen olvasható és könnyen írható egyszerű szöveges formátumban írhassanak, és tetszés szerint átalakíthassák szerkezetileg érvényes XHTML-re (vagy HTML ) ".
Fő tervezési célja az olvashatóság- hogy a nyelv olvasható legyen úgy, ahogy van, anélkül, hogy kinézne címkékkel vagy formázási utasításokkal, ellentétben egy jelölőnyelvvel , például Rich Text Format (RTF) vagy HTML- szel formázott szöveggel. nyilvánvaló címkékkel és formázási utasításokkal rendelkeznek. Ebből a célból, a fő inspirációt a meglévő egyezmények megjelölésére egyszerű szöveges az e-mail , bár arra is felhívja a korábbi jelölőnyelveket, nevezetesen setext , textil , és reStructuredText .
Gruber írt Perl script, Markdown.pl
, amely átalakítja megjelölt szövegbevitelbõl érvényes, jól formált XHTML vagy HTML és helyettesíti a szögletes zárójel „ <
” „ >
” és az és jelet „ &
” azok megfelelő karaktert entitás hivatkozások . Ez önálló szkriptként, a Blosxom vagy a Mozgatható típus beépülő moduljaként , vagy a BBEdit szövegszűrőjének szerepét töltheti be .
Szabványosítás
A Markdown -t egy informális specifikáció és egy referencia -megvalósítás jellemezte a HTML -re konvertáláshoz. Idővel számos Markdown megvalósítás jelent meg. Az emberek ezeket elsősorban az alap szintaxison felül további funkciók - például táblázatok, lábjegyzetek, definíciós listák (technikailag HTML -leírási listák) és a HTML -blokkokon belüli Markdown - kifejlesztésével fejlesztették ki. Néhány ilyen viselkedés eltér a referencia megvalósítástól. Ugyanakkor az informális specifikáció számos kétértelműsége felkeltette a figyelmet. Ezek a problémák ösztönözték olyan eszközök létrehozását, mint például a Babelmark a különböző megvalósítások teljesítményének összehasonlítására, és néhány Markdown -elemző fejlesztő erőfeszítését a szabványosítás érdekében. Gruber azonban azzal érvelt, hogy a teljes szabványosítás hiba lenne: "A különböző oldalaknak (és embereknek) különböző igényeik vannak. Egyetlen szintaxis sem boldogítana mindenkit."
2016 márciusában két releváns információs internetes RFC -t tettek közzé:
- Az RFC 7763 bevezette a MIME típust
text/markdown
az eredeti változattal. - Az RFC 7764 többek között megvitatta és regisztrálta a MultiMarkdown , GitHub Flavored Markdown (GFM), Pandoc , CommonMark és Markdown Extra változatokat.
CommonMark
Fájlnévkiterjesztések |
.md , .markdown
|
---|---|
Internetes média típusa | text/markdown; variant=CommonMark |
Egységes típusazonosító (UTI) | bizonytalan |
UTI konformáció | public.plain-text |
Által kifejlesztett | John MacFarlane , nyílt forráskódú |
Első kiadás | 2014. október 25. |
Legutolsó kiadás | 0.30 (2021. június 19. ) |
Formátum típusa | Jelölőnyelv |
Bővítve ettől | Árleszállítás |
Kiterjesztve | GitHub Flavored Markdown |
Nyitott formátum ? | Igen |
Weboldal | spec |
2012 -től az emberek egy csoportja, köztük Jeff Atwood és John MacFarlane elindította azt, amit az Atwood szabványosítási erőfeszítésnek minősített. Egy közösségi weboldal most azt célozza, hogy "dokumentálja a dokumentumok szerzői és fejlesztői, valamint a különböző Markdown megvalósítások végrehajtói számára rendelkezésre álló különféle eszközöket és forrásokat". 2014 szeptemberében Gruber kifogásolta a "Markdown" használatát ezen erőfeszítés jegyében, és új neve lett a CommonMark nevű új nyelvjárás. A CommonMark.org közzétette a specifikáció, a referencia implementáció, a tesztcsomag és a [tervek], hogy 2019 -ben bejelentik a véglegesített 1.0 specifikációt és tesztcsomagot. ” Azóta egyetlen 1.0 specifikációt sem tettek közzé, mivel a fő problémák továbbra is megoldatlanok. Ennek ellenére a következő webhelyek és projektek fogadták el a CommonMark alkalmazást: Discourse, GitHub, GitLab, Reddit, Qt, Stack Exchange (Stack Overflow) és Swift.
Változatok
Az olyan webhelyek, mint a GitHub , Bitbucket , Reddit , Diaspora , Stack Exchange , OpenStreetMap és SourceForge, a Markdown változatait használják a felhasználók közötti vita megkönnyítésére.
A megvalósítástól függően az alapvető soron belüli HTML -címkék támogatottak lehetnek. A dőlt szöveget végrehajthatja a _underscores_
és/vagy *single-asterisks*
.
GitHub Flavored Markdown
A GitHub már 2009 óta használta a Markdown saját változatát, és támogatta a további formázást, például táblázatokat és blokkoló tartalmak beillesztését a listaelemekbe, valamint a GitHub-specifikus funkciókat, például a hivatkozásokhoz, problémákhoz, felhasználónevekhez való automatikus linkelést , stb. 2017 -ben a GitHub közzétette a GitHub Flavored Markdown (GFM) hivatalos specifikációját, amely a CommonMark -on alapul. Ez a CommonMark szigorú szuperhalmaza, pontosan követve a specifikációját, kivéve a táblázatokat, az áthúzást, az automatikus linkeket és a feladatlistákat, amelyeket a GFM kiterjesztésként ad hozzá. A GitHub ennek megfelelően megváltoztatta a webhelyükön használt elemzőt is, ami megkövetelte néhány dokumentum megváltoztatását. Például a GFM most megköveteli, hogy a címsort létrehozó hash szimbólum szóközzel legyen elválasztva a címsor szövegétől.
Markdown Extra
A Markdown Extra egy könnyű jelölőnyelv, amely a PHP -n (eredetileg), Pythonon és Ruby -n megvalósított Markdown -on alapul . Olyan funkciókat ad hozzá, amelyek nem érhetők el a sima Markdown szintaxissal. A Markdown Extra néhány tartalomkezelő rendszerben támogatott , például a Drupal és a TYPO3 .
A Markdown Extra a következő funkciókkal egészíti ki a Markdown szolgáltatást:
- Markdown jelölés a HTML blokkokon belül
- Elemek azonosító/osztály attribútummal
- "Elkerített kódblokkok", amelyek több sor kódot ölelnek fel
- Táblázatok
- Definíciós listák
- Lábjegyzetek
- Rövidítések
Példa
Szöveg Markdown szintaxissal | A megfelelő HTML -t egy Markdown processzor állította elő | Böngészőben megtekintett szöveg |
---|---|---|
Heading
=======
Sub-heading
-----------
Paragraphs are separated
by a blank line.
Two spaces at the end of a line
produce a line break.
|
<h1>Heading</h1>
<h2>Sub-heading</h2>
<p>Paragraphs are separated
by a blank line.</p>
<p>Two spaces at the end of a line<br />
produce a line break.</p>
|
A bekezdéseket üres sor választja el. A sor végén lévő két szóköz |
Text attributes _italic_,
**bold**, `monospace`. Some implementations may use *single-asterisks* for italic text.
Horizontal rule:
---
Strikethrough:
~~strikethrough~~
|
<p>Text attributes <em>italic</em>,
<strong>bold</strong>, <code>monospace</code>. Some implementations may use <i>single-asterisks</i> for italic text.</p>
<p>Horizontal rule:</p>
<hr />
<p>Strikethrough:</p>
<s>strikethrough</s>
|
Szöveges attribútumok dőlt ,
félkövér , monospace . Néhány megvalósítás egycsillagos csillagokat használhat a dőlt szöveghez.
Vízszintes szabály: Áthúzás:
|
Bullet list:
* apples
* oranges
* pears
Numbered list:
1. lather
2. rinse
3. repeat
|
<p>Bullet list:</p>
<ul>
<li>apples</li>
<li>oranges</li>
<li>pears</li>
</ul>
<p>Numbered list:</p>
<ol>
<li>lather</li>
<li>rinse</li>
<li>repeat</li>
</ol>
|
Felsorolás lista:
Számozott lista:
|
An [example](http://example.com).
![Image](Icon-pictures.png "icon")
> Markdown uses email-style
> characters for blockquoting.
> Multiple paragraphs need to be prepended individually.
Basic inline <abbr title="Hypertext Markup Language">HTML</abbr> may be supported.
|
<p>An <a href="http://example.com">example</a>.</p>
<p><img alt="Image" title="icon" src="Icon-pictures.png" /></p>
<blockquote>
<p>Markdown uses email-style characters for blockquoting. Multiple paragraphs need to be prepended individually.</p>
</blockquote>
<p>Basic inline <abbr title="Hypertext Markup Language">HTML</abbr> may be supported.</p>
|
Egy példa .
Az alap soron belüli HTML támogatott lehet. |
Megvalósítások
A Markdown megvalósításai több mint egy tucat programozási nyelven érhetők el; emellett számos platform és keretrendszer támogatja a Markdown -ot. Például a Markdown bővítmények minden nagyobb blogolási platformhoz léteznek.
Míg a Markdown minimális jelölőnyelv, és normál szövegszerkesztővel olvasható és szerkeszthető, vannak speciális szerkesztők, amelyek előnézetben tekintik meg a fájlokat stílusokkal, amelyek minden nagyobb platformon elérhetők. Sok általános célú szöveg- és kódszerkesztő beépített vagy opcionális letöltésként elérhető szintaktikai kiemelő bővítményeket tartalmaz a Markdown számára. A szerkesztők tartalmazhatnak egymás melletti előnézeti ablakot, vagy közvetlenül WYSIWYG módon jeleníthetik meg a kódot .
- JotterPad - online WYSIWYG szerkesztő, amely támogatja a Markdown -ot és a szökőkutat
- Doxygen - forráskód -dokumentációs generátor, amely extra funkciókkal támogatja a Markdown -ot
- RStudio - egy IDE az R . Ez biztosítja a C ++ wrapper függvény egy árleszállítás variáns úgynevezett sundown
- A GitHub Flavored Markdown (GFM) figyelmen kívül hagyja a szavakban az aláhúzásokat, és szintaktikai kiemelést , feladatlistákat és táblázatokat ad hozzá
- RMarkdown
Lásd még
- A dokumentumjelölő nyelvek összehasonlítása
- Dokumentációs generátorok összehasonlítása
- Könnyű jelölési nyelv
- Wiki jelölés
Hivatkozások
Külső linkek
- Hivatalos webhely az eredeti John Gruber jelöléshez
- Markdown Guide: Eszközök - a Markdown -ot támogató szoftverek független forrás -áttekintése