Markdown (pronounced markdown ) is a lightweight markup language designed to write the most readable and easy-to-edit text, but suitable for converting to languages for advanced publications ( HTML , Rich Text and others).
| Markdown | |
|---|---|
| Expansion | . |
| MIME type | |
| Developer | John Gruber |
| Published | 2004-03-19 [2] [3] |
| Latest issue | 2004-12-17 |
| Format type | Markup language |
| Open format ? | yes [4] |
| Site | |
Content
History
Originally created in 2004 by John Gruber and Aaron Schwartz . Many language ideas have been borrowed from existing conventions for marking text in emails . Markdown language implementations convert Markdown text into valid , well-constructed XHTML and replace the left angle brackets ("<") and ampersands ("&") with the corresponding entity codes. The first Markdown implementation was the Perl implementation written by Gruber, however, after a while, many implementations from third-party developers appeared (see below ). The Perl implementation is licensed under the BSD type. Markdown implementations in various programming languages are included (or available as a plugin ) in many content management systems .
Syntax Examples
The following are examples of using Markdown, but this is far from a complete guide. A full description of the language can be found on the official website [6] . Characters that are usually considered special in Markdown can be escaped with a backslash . For example, the sequence "\ *" will output the symbol "*", and will not be a sign of the beginning of the selected text. In addition, Markdown does not convert text inside raw XHTML blocks. Thus, XHTML sections can be included in a Markdown document by first wrapping them in block level tags.
- Text with emphasis or logical emphasis:
* highlight * (e.g. italics) ** strong highlight ** (e.g. bold)
- Program Code:
Inline code for `Hello world!`
A line or block of code is created by 4 spaces at the beginning of each line
- Strikethrough text:
need to do ~~ one ~~ another thing
- Lists:
* bullet list item - another unordered list item + element bullets may be different
1. Numbered list item 2. Element No. 2 of the same list 9. Element number 3 of the list - the elements are numbered in order, the number at the beginning of the line does not matter
- Headings:
Headings are created by placing a pound sign in front of the heading text. The number of characters "#" corresponds to the title level. HTML provides 6 levels of headings.
# Level one heading #### Level Four Heading
The first two header levels also have alternative syntax:
First level heading ==========================
Second level heading ------------------------
- Quotes (blockquote tag):
> This text will be enclosed in HTML <blockquote> </blockquote> tags
- References:
[Link text] (address: //link.here "Link title")
or
[Link Text] [tag]
and somewhere in the document (e.g. at the very bottom)
[tag]: address: //link.here "Link title"
- Images:
! [Alt-text] (address: //link.here "Image title")
Markdown Implementations
- C # [7] [8]
- C [9] [10] [11] [12]
- ColdFusion [13]
- Common Lisp [14]
- Go [15]
- Haskell [16]
- Java [17] [18]
- JavaScript [19]
- Kotlin [20] [21]
- Lua [22]
- newLISP [23]
- Perl [24]
- PHP [25]
- Python [26] [27]
- Ruby [28] [29]
- Scala [30]
- Tcl [31]
Extensions
The following applications implement Markdown, expanding its syntax with additional functionality:
- MultiMarkdown (C) [32]
- Text :: MultiMarkdown (Perl) module that implements the MultiMarkdown extension [33]
- PHP Markdown Extra [34]
- python-markdown2 (supports some extensions of PHP Markdown) [27]
- python-markdown (Has an extension system to add new syntax) [26]
- Markout (Java) [35]
- Pegdown (Java) [18]
- Maruku (Ruby) [29]
- Pandoc (Haskell) [16] [36]
Guides
- Markdown: Dingus Online Converter [37]
- Markdown cheat sheet [38]
Converters
- from HTML to Markdown
- html2text.py (written in Python ) [39]
- Markdownify (in PHP ) [40]
- Make.text - a bookmarklet that converts any web page to Markdown [41]
- XHTML-to-Markdown XSLT (XSLT stylesheet, works only with XHTML) [42]
- Pandoc - a Haskell -written library for converting various formats, supports several Markdown dialects (
markdownis a dialect from pandoc,markdown_strictis an original Markdown without extensions,markdown_phpextrais a dialect from PHP ,markdown_githubis a dialect from github ) can convert from and to Markdown, HTML , reStructuredText , LaTeX , and others. [sixteen]
- Other formats in Markdown
- odt2txt (a Python script for converting files from the OpenDocument format to Markdown) [43]
- word_markdown_macro (a Microsoft Word macro that converts some part of Word formatting to Markdown) [44]
Web Applications Using Markdown
- Wiki :
- DokuWiki (using the plugin)
- ikiwiki
- Oddmuse
- PmWiki (using the plugin)
- Blogs :
- Tumblr - initially disabled, but can be used by turning it on in the settings.
- scriptogr.am
- CMS :
- Drupal - Markdown content filter [45]
- Magento - using the module [46]
- Plone - Native Support in Plone 3
- TYPO3 - using the af_markdown plugin [47]
- RadiantCMS - one of the types of markup available “out of the box” [48]
- HTMLy - used by default to store content (instead of databases) [49]
- Web frameworks :
- Ruby on Rails - Requires installation of BlueCloth, Maruku [50]
- Yii - CMarkdown widget, included in the standard delivery of the framework
- Webasyst - is included in the standard delivery of the PHP framework as a plug-in for the free application "Blog"
- Symfony - requires installation of the KnpMarkdownBundle bundle
- Social apps:
- Discord is an application for public communication.
- Steemit is a blockchain -based social network .
- Telegram is a popular cross-platform messenger .
Text Editors Support
- Universal editors: TextMate , BBEdit (since version 8.6), Vim (using special user mode [51] , written by Ben Williams), Emacs (using special user mode [52] , written by Jason Blewins), TextWrangler , Smultron , Sublime Text , Geany , Atom, Visual Studio Code.
- Editors for blogs: Ecto [53] , MarsEdit
- Plugins for ThinkTank Mathematics Eclipse Environment Editor [54]
- Plugins for gedit text editor [55]
- Text editor iA Writer for Mac OS [56] and Android [57] .
- ReText text editor for GNU / Linux [58]
- WYSIWYM Texts Editor for Windows / Mac OS [59]
Notes
- ↑ Daring Fireball Statement by creator John Gruber
- ↑ Markdown . Aaron Swartz: The Weblog (March 19, 2004).
- ↑ Daring Fireball: Markdown . Date of treatment April 25, 2014. Archived April 2, 2004.
- ↑ Markdown: License . Daring Fireball. Date of appeal April 25, 2014.
- ↑ S. Leonard The text / markdown Media Type - Internet Engineering Task Force , 2016 .-- 15 p. - doi: 10.17487 / RFC7763
- ↑ Markdown Syntax Description
- ↑ Markdownsharp
- ↑ Knagis CommonMark.NET
- ↑ Discount - a C implementation of the Markdown markup language
- ↑ Standards compliant, fast, secure markdown processing library in C
- ↑ An implementation of markdown in C, using a PEG grammar
- ↑ Flexible C library for markdown parsing
- ↑ CFX_Markdown | Seb duggan
- ↑ CL-Markdown - Markdown and More
- ↑ Blackfriday: a markdown processor for Go
- ↑ 1 2 3 Pandoc - About pandoc unopened (inaccessible link) . Date of treatment May 29, 2008. Archived on August 26, 2007.
- ↑ myabc / markdownj unopened . Github Date of treatment January 28, 2016.
- ↑ 1 2 dokka - - Kotlin Resources
- ↑ Showdown - A JavaScript port of Markdown
- ↑ intellij-markdown unspecified . Github Date of treatment November 29, 2017.
- ↑ Documentation Engine for Kotlin
- ↑ http://www.frykholm.se/files/markdown.lua
- ↑ The Search Engine that Does at InfoWeb.net (link not available)
- ↑ Text :: Markdown - search.cpan.org
- ↑ PHP Markdown
- ↑ 1 2 Markdown in Python: Overview
- ↑ 1 2 python-markdown2 - Project Hosting on Google Code
- ↑ BlueCloth Archived June 13, 2008.
- ↑ 1 2 Maruku: a Markdown-superset interpreter unopened (inaccessible link) . Date of treatment May 29, 2008. Archived June 20, 2008.
- ↑ MarkWrap - Unified Scala wrapper API for various lightweight markup APIs
- ↑ The CAIUS project has a pure Tcl package for processing Markdown
- ↑ MultiMarkdown
- ↑ Text :: MultiMarkdown - search.cpan.org
- ↑ PHP Markdown Extra
- ↑ Markout: Markout
- ↑ markdown by Pandoc versus the standard markdown
- ↑ Daring Fireball: Markdown Web Dingus
- ↑ warpedvisions.org :: Markdown cheat sheet
- ↑ html2text: THE ASCIINATOR (aka html2txt)
- ↑ Markdownify: The HTML to Markdown converter for PHP
- ↑ Make.text
- ↑ Elements or Lower :: Geekery: XML: XHTML-to-Markdown.html
- ↑ Markdown in Python: odt2txt Archived May 24, 2008.
- ↑ ProgTips "Blog Archive" Word to Markdown converter (inaccessible link) . Date of treatment May 29, 2008. Archived March 27, 2008.
- ↑ Markdown filter for Drupal | drupal.org
- ↑ Markdown Editor module for Magento
- ↑ typo3.org: Repository
- ↑ RadiantCMS
- ↑ HTMLy
- ↑ The Search Engine that Does at InfoWeb.net Archived on September 8, 2008. or RDiscount , which is a development of BlueCloth
- ↑ Markdown Vim Mode | Plasticboy
- ↑ Emacs Markdown Mode
- ↑ Ecto, the editor for blogs (English)
- ↑ Markdown plugin for Eclipse environment editor Archived December 31, 2009. (eng.)
- ↑ Markdown plugin for gedit text editor Archived September 13, 2009. (eng.)
- ↑ iA Writer for Mac Archived January 12, 2012. (eng.)
- ↑ Apps on Google Play - iA Writer: Get Focused. . play.google.com Date of treatment November 18, 2018.
- ↑ ReText - text editor for Markdown and reStructuredText Archived November 11, 2012. (eng.)
- ↑ Texts - rich editor for plain text