Markdown - Markdown

Árleszállítás
Markdown-mark.svg
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. (17 éve) ( 2004-03-19 )
Legutolsó kiadás
1.0.1
(2004. december 17. (16 éve) ) ( 2004-12-17 )
Formátum típusa Jelölőnyelv
Kiterjesztve pandoc , MultiMarkdown , Markdown Extra , CommonMark , RMarkdown
Nyitott formátum ? Igen
Weboldal daringfireball .net /project /markdown /

Á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/markdownaz 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

CommonMark
Markdown-mark.svg
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. (6 éve) ( 2014-10-25 )
Legutolsó kiadás
0.30
(2021. június 19. (3 hónapja) ) ( 2021-06-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 .commonmark .org

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>
Cím
Alcím

A bekezdéseket üres sor választja el.

A sor végén lévő két szóköz
törést eredményez.

 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:

á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:
  • almák
  • narancs
  • körte

Számozott lista:

  1. habzik
  2. öblítés
  3. ismétlés
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 .

Kép

A Markdown e-mail stílusú karaktereket használ a blokkoláshoz. Több bekezdést egyenként kell előzetesen elhelyezni.

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 .

Lásd még

Hivatkozások

Külső linkek