1. Markdown
https://en.wikipedia.org/wiki/Markdown
https://zh.wikipedia.org/wiki/Markdown
Markdown是一种轻量级标记语言,创始人为约翰·格鲁伯(英语:John Gruber)。它允许人们使用易读易写的纯文本格式编写文档,然后转换成有效的XHTML(或者HTML)文档。这种语言吸收了很多在电子邮件中已有的纯文本标记的特性。
由于Markdown的轻量化、易读易写特性,并且对于图片,图表、数学式都有支持,当前许多网站都广泛使用Markdown来撰写帮助文档或是用于论坛上发表消息。如GitHub、Reddit、Diaspora、Stack Exchange、OpenStreetMap 、SourceForge、简书等,甚至还能被使用来撰写电子书。
2. 标准化
2.1 CommonMark
从2012年开始,包括Jeff Atwood和John MacFarlane在内的一群人启动了标准化工作, 更名为CommonMark. http://spec.commonmark.org/
2.2 GFM
2017年,GitHub发布了基于CommonMark的GitHub Flavored Markdown(GFM)的正式规范。除了表格、删除线、自动链接和任务列表被GitHub规范作为扩展添加之外,它遵循CommonMark规范。GitHub还相应地更改了其站点上使用的解析器,这要求更改某些文档 - 例如,GFM现在要求创建标题的哈希符号由空格字符分隔。
- https://github.github.com/gfm/
- https://help.github.com/en/github/writing-on-github
- https://help.github.com/cn/github/writing-on-github
2.3 Markdown Extra
Markdown Extra是一种轻量级标记语言,基于在PHP(最初),Python和Ruby中实现的Markdown。它添加了普通Markdown语法不具备的功能。
内容管理系统支持Markdown Extra,例如Drupal, TYPO3, MediaWiki。
它为Markdown添加了以下功能: HTML块内的markdown标记; 具有id / class属性的元素; 围栏代码块; 表格; 定义清单; 脚注; 缩写;
3. Markdown使用
3.1 Markdown 入门
https://markdown.bootcss.com/getting-started/
Markdown 语法的首要设计目标是尽可能易读。基于这个目标,Markdown 格式的文档能够以纯文本形式原样发布,而不会看起来像被填满了标签或格式化指令。
3.2 Markdown语法
Markdown 速查表
Markdown 速查表提供了所有 Markdown 语法元素的快速参考。但是此速查表无法覆盖所有用法,因此,如果你需要某些语法元素的更多信息,请参阅我们的: 基本语法; 扩展语法
3.3 推荐的一些Markdown文档创作应用程序:
https://markdown.bootcss.com/getting-started/#documents
- Mac: MacDown, iA Writer, or Marked
- iOS / Android: iA Writer
- Windows: ghostwriter or Markdown Monster
- Linux: ReText or ghostwriter
- Web: Dillinger or StackEdit
3.4 Markdown 相关工具
https://markdown.bootcss.com/tools/
支持 Markdown 的应用程序和组件。下表
name | 中文描述 | 英文描述 |
---|---|---|
Bear | Bear是适用于macOS和iOS设备的Markdown笔记应用程序。 | Bear is a Markdown notes application for macOS and iOS devices. |
Boostnote | Boostnote是面向开发人员的Markdown笔记应用程序。 | Boostnote is a Markdown note taking application for developers. |
CodiMD | CodiMD是一个开源的实时协作Markdown编辑器。 | CodiMD is an open-source real-time collaborative Markdown editor. |
Dillinger | Dillinger是专为移动写作而设计的在线Markdown编辑器。 | Dillinger is an online Markdown editor designed for on-the-go writing. |
Docusaurus | Docusaurus将Markdown文件转换为文档网站。 | Docusaurus converts Markdown files to a documentation website. |
Ghost | Ghost是一个开源CMS,以其速度,简单性和易用性而闻名。 | Ghost is an open source CMS renowned for its speed, simplicity, and ease of use. |
GitBook | GitBook是文档网站和知识库的托管解决方案。 | GitBook is a hosted solution for documentation websites and knowledge bases. |
GitHub Pages | GitHub Pages是一项免费服务,可将Markdown文件转换为网站。 | GitHub Pages is a free service that turns Markdown files into a website. |
Hugo | Hugo是一个静态网站生成器,可将Markdown文件转换为网站。 | Hugo is a static site generator that converts Markdown files to a website. |
iA Writer | iA Writer是最著名的Markdown编辑器之一。 | iA Writer is one of the most established and widely-acclaimed Markdown editors. |
Imdone | Imdone是基于markdown的看板,位于注释,文档和代码中。 | Imdone is a markdown based kanban board, that lives in your notes, docs, and code. |
Jekyll | Jekyll是一个静态网站生成器,可将Markdown文件转换为网站。 | Jekyll is a static site generator that converts Markdown files to a website. |
Joplin | 乔普林(Joplin)是一个记笔记应用程序,它尊重您的隐私。 | Joplin is a note taking application that respects your privacy. |
MacDown | MacDown是可用于macOS的最佳Markdown编辑器之一。 | MacDown is one of the best Markdown editors available for macOS. |
Mark Text | Mark Text是专为Markdown设计的流行的免费开放源代码编辑器。 | Mark Text is a popular free and open-source editor designed for Markdown. |
Markdeep | Markdeep会将任何Markdown文件转换为独立的HTML文件。 | Markdeep turns any Markdown file into a self-contained HTML file. |
Markdown Here | Markdown这是一个浏览器扩展程序,可以转换Web表单中的Markdown文本。 | Markdown Here is a browser extension that converts Markdown text in web forms. |
Mattermost | Mattermost是一个开源消息传递和团队协作应用程序。 | Mattermost is an open source messaging and team collaboration application. |
MkDocs | MkDocs是用于构建文档网站的静态网站生成器。 | MkDocs is a static site generator for building documentation websites. |
Notable | 值得注意的是带有Markdown支持的准系统笔记应用程序。 | Notable is a bare-bones note taking application with great Markdown support. |
Notion | 概念是针对所有人的多合一知识管理解决方案。 | Notion is an all-in-one knowledge management solution for everyone. |
Reddit是一个受欢迎的在线社区,支持在Markdown中发布。 | Reddit is a popular online community that supports posting in Markdown. | |
Simplenote | Simplenote是跨平台的Markdown笔记应用程序。 | Simplenote is a cross-platform Markdown notes application. |
Slack | Slack是一个消息传递和团队协作应用程序。 | Slack is a messaging and team collaboration application. |
Squarespace | Squarespace是用于构建网站的流行订阅服务。 | Squarespace is a popular subscription service for building websites. |
StackEdit | StackEdit是功能强大的在线Markdown编辑器,您可以在任何地方使用。 | StackEdit is a powerful online Markdown editor you can use anywhere. |
Standard Notes | Standard Notes是一种优雅的开源笔记记录应用程序。 | Standard Notes is an elegant, open-source note taking application. |
Trello | Trello是一个看板风格的项目管理应用程序。 | Trello is a kanban-style project management application. |
Typora | Typora是一种用于便笺和文档的简单且可配置的编辑器。 | Typora is a simple and configurable editor designed for notes and documents. |
Ulysses | Ulysses是适用于macOS和iOS设备的流行编写应用程序。 | Ulysses is a popular writing application for macOS and iOS devices. |
3.5 Markdown 更多教程
https://www.runoob.com/markdown/md-tutorial.html
本教程将使用 Typora 编辑器来讲解 Markdown 的语法,Typora 支持 MacOS 、Windows、Linux 平台,且包含多种主题,编辑后直接渲染出效果。
支持导出HTML、PDF、Word、图片等多种类型文件。
Typora 官网:https://typora.io/
你也可以使用我们的在线编辑器来测试:https://c.runoob.com/front-end/712
https://www.markdownguide.org/
https://github.com/showdownjs/showdown
http://demo.showdownjs.com/
3.6 cnblogs支持markdown
https://www.cnblogs.com/cmt/p/markdown.html
更新:2014年7月22日发布了新版markdown功能,详见新版markdown功能发布!支持github flavored markdown!
https://www.cnblogs.com/cmt/p/markdown_github.html
markdown语法:Markdown Cheatsheet
https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet
3.7 小结
Markdown相对html等标记语言,确是简洁,但简单了解下来也仅适合书写简单的介绍,没有表格,目录的短文。
扩展语法里有表格,也可以这是左右对齐等;也有标题的ids,但是使用起来反而不如html方便啊。
对这种轻量级的语言也仅适合轻量级的应用。github使用pages页面,就是个介绍页面。
在没有表格,不需要目录的情况下,还是很方便的。Linux下很多图形化的文档编辑器都支持md格式,就是说默认情况下保存问*.md文件,就能在写文档的同时清晰的看到标题,列表等,使用默认的颜色区分来开。
更正: 是否有目录功能,取决与使用的工具,比如使用hexo和适当的模板就可以根据标题生成目录。
4. See Also
选择正确的Markdown解析器
https://css-tricks.com/choosing-right-markdown-parser/
如果您要选择要使用的版本(或您要在网络产品上提供给用户的版本),则必须了解要使用的版本,因为一旦选择并有内容就很难切换那里取决于那些功能。
https://github.com/markdown/markdown.github.com/wiki/Implementations
What are the main rendering differences between Markdown and CommonMark?
https://help.apiary.io/faq/commonmark/
https://en.wikipedia.org/wiki/List_of_document_markup_languages
https://zh.wikipedia.org/wiki/文档标记语言比较
https://en.wikipedia.org/wiki/Comparison_of_document-markup_languages
https://en.wikipedia.org/wiki/Lightweight_markup_language
https://en.wikipedia.org/wiki/Lightweight_markup_language#Comparison_of_lightweight_markup_language_syntax
https://en.wikipedia.org/wiki/Lightweight_programming_language
https://en.wikipedia.org/wiki/Lightweight_software
https://en.wikipedia.org/wiki/Wiki_markup
https://en.wikipedia.org/wiki/Help:Wikitext
https://sspai.com/post/55786
个人博客的方案推荐,你只负责编写
docsify 是一个动态生成文档网站的工具。不同于 GitBook、Hexo 的地方是它不会生成将 .md 转成 .html 文件,所有转换工作都是在运行时进行。这将非常实用,如果只是需要快速的搭建一个小型的文档网站,或者不想因为生成的一堆 .html 文件「污染」commit 记录,只需要创建一个 index.html 就可以开始写文档而且直接部署在 GitHub Pages。
https://docsify.js.org/#/zh-cn/themes
https://cdn.jsdelivr.net/npm/docsify/lib/themes/dark.css
10分钟让你的站点也支持Markdown
https://blog.csdn.net/github_36700243/article/details/62430414
https://github.com/showdownjs/showdown