轻松记录您
灵感和创意

马克一下:Markdown

Markdown是一种纯文本格式的标记语言。

1. 历史

1.1 发明人John Gruber

John Gruber在2002年创建了个人博客 Daring Fireball,核心内容是关于苹果公司的各类信息。为了更好地进行博客写作,2004年发布了Markdown V1.0.1,同时提供了一个Perl脚本完成Markdown到Html的转换。

这是链接

https://daringfireball.net/projects/Markdown/

在此之后,John Gruber再也没有更新过Markdown语法。顺便八卦一下,John Gruber在1973年出生于费城,据说博客一年的广告收入数百万。

1.2 布道者 Jeff Atwood

2008年,Stack Overflow的联合创始人Jeff Atwood选定Markdown作为Stack Overflow用户编写和回答问题的语法方案。

Jeff Atwood长期组织推广Markdown,并且致力于Markdown语法标准化规范的倡导和推动。

然而,John Gruber认为:无论在标准化上面做什么努力,都不可以称其为Markdown。因此他要求标准化团队更换Standard Markdown的名字,关闭同名网站并且对他公开道歉。所以后来的标准规范叫做CommonMark。这是链接:

https://commonmark.org/

1.3 Pandoc:John MacFarlane

John MacFarlane,加州伯克利的教授,命令行文档转换工具Pandoc的 作者,CommonMark 规范主要编写作者。CommonMark 规范包含了 624 个测试用例,C 和 JavaScript 的规范实现。

1.4 GFM

全球最大的程序员交友社区Github支持Markdown,GitHub Flavored Markdown spec在2017年发布,支持表格、任务列表和删除线。

1.5 Aaron Swartz

特别提一下,Aaron Swartz也很推荐Markdown。亚伦·斯沃茨(Aaron Swartz),一个年少成名的计算机天才,着名黑客,可惜26岁英年早逝。

这是他的博客:

http://www.aaronsw.com/weblog/001189

1.6 国内的推介者

阳志平:理想的写作环境:Git+Github+Markdown+Jekyll

2012年

https://www.yangzhiping.com/tech/writing-space.html

池建强:寻找简单的快乐

2013年,http://macshuo.com/?p=453

简书:支持Markdown的写作网站

2013年,https://www.jianshu.com/

李笑来Markdown Here 教程,2016年

Markdown也是各种笔记和写作软件首选支持的格式。

本文的写作是在有道云笔记中使用Markdown完成,然后纯文本复制到 后台编辑器中,使用Firefox的Markdown-here插件完成一键排版。( 不支持外部链接和图片,需要一些额外的手动工作。)

2. 纯文本的威力

Keep knowledge in Paint Text.

《The Pragmatic Programmer》 (中译本:程序员修炼之道)

纯文本的好处在于方便保存,几乎不存在跨平台的兼容性问题(除了换行和中文编码),可以使用各种工具处理,尤其是在Linux/Unix系统中有各类文本处理小工具。

对于程序员来说,纯文本可以方便地使用版本控制工具进行管理,方便历史回溯和多人协作。

纯文本的坏处是,缺乏数据结构化的信息,不方便做可视化展示。当然相对于二进制和数据库而言,纯文本所需要的存储资源更多一些。

3. 标记语言

所有的计算机语言都是用纯文本写的。

比如编程语言,如C,Perl,Python,Java等。这些语言需要专用的编译器,转换成相应的机器码在CPU上运行。

比如标记语言(markup language),常见的有html,xml,xhtml等。在文本内容基础上增加了各类标签,表明数据结构、属性,或者提供用于数据展示的格式化。

Markdown是一种轻量化的标记语言。“轻”是相对于HTML的,标签没有那么多,对于人而言可读性更好。

Markdown类似的,还有reStructureText,很多Python模块的文档使用的语言,基于sphinx工具。

参考网址:http://www.pythondoc.com/sphinx/index.html

除此之外,还有textile,AsciiDoc等其他轻量标记语言。

4. 编辑器与排版

Markdown是纯文本,可以使用任何文本编辑器,最好能够支持自动渲染,自动插入语法元素等。个人推荐Typora。

Markdown只是标记语言,可以转换为html或者pdf,最终渲染效果取决于css。

Markdown的转换工具有很多。最基本的就是原作者发布的perl脚本,此外有pandoc,Markdown-here浏览器插件,以及大量基于Java,C,Perl,Python的开源工具。由于Markdown没有强制的统一标准,不同工具支持的语法会略有不同。

5. 奇技淫巧

很多工具和在线网站可以利用Markdown实现很多神奇的功能,其实主要是靠强大的脚本解析工具。

画流程图

画甘特图

做todo-list

输入数学公式

自动插入目录

煮咖啡(也许?)

6. 几句题外话

微软的word是世界上最强大的编辑和排版工具,没有之一。

编辑和排版界最牛逼的名人是高德纳(Tex/LaTex的发明者)。

如果没有精通word,没有精通Latex,可以试试Markdown一个小而美的工具。

未经允许不得转载:坚果云Markdown » 马克一下:Markdown
分享到: 更多 (0)

坚果云Markdown轻松记录您 灵感和创意

坚果云Markdown下载坚果云Markdown介绍