Markdown生为专注和一致性体验
We believe that writing is about content, about what you want to say - not about fancy formattin.
Markdown标记语法,由约翰·格鲁伯(John Gruber)于2004年创立,2017年,GitHub 发布了基于CommonMark 的 Github Flavored Markdown(GFM)的正式规范。
约翰·格鲁伯对于Markdown的定义是:Markdown is a text-to-HTML conversion tool for web writers. Markdown allows you to write using an easy-to-read, easy-to-write plain text format, then convert it to structurally valid XHTML (or HTML). (Markdown是面向Web作家的文本到HTML转换工具。Markdown允许您使用易于阅读,易于编写的纯文本格式进行编写,然后将其转换为结构上有效的XHTML(或HTML)。)
对于经常需要专注写东西的人来说,markdown标记语法是一个必备的工具。它能够让你双手不离开键盘的情况下(只是使用键盘,而不用鼠标或触屏),实现给文本加粗,区别各级标题,引用格式,插入图片、链接、表格、甘特图、数学公式等等功能。markdown盛行于程序员圈子,是编码的好伙伴。其实markdown本身也是一种编码形式,markdown语法在机器和人之间搭建了一个桥梁,让人用机器读得懂的语言和机器进行对话,而不是相反,因此也省略了大量中间环节,变得轻量化。
轻量化和标准化带来的好处不只是书写过程行云流水般的敲字体验和黑客范式,还在于由于它的编码化形式,因此它的格式是一致的。什么意思呢?我们都有这种体验,一份Word文档,在自己电脑上看还好好的,但是发给同事就乱码了,这多半是由于两个软件平台编码格式不一致导致的,而markdown不存在这样的问题,使用正式规范的编码对文本进行的格式化,在任何支持markdown的平台,都能正常显示(由于平台显示形态可能不一样,比如标题的颜色、引用线粗细等会不太一样,因此要忠实重现文本,最好用PDF版本进行文件的传阅)。
和markdown相对的,便是富文本格式,像微软的Word,搭载的就是富文本格式。你可以把markdown理解成一个指路的路标,行人就像机器,看到这个路标,就知道应该往哪儿走,能够识别markdown语法的载体,当我们用markdown进行写作时,它会自动识别并执行相对应“使文本格式化”的操作。
机器编译和自然语言之间的理解鸿沟
对于富文本格式来说,由于软件担当了第三者,因而机器本身的表达形式和使用者对其的理解,都不可避免的存在差异。似乎看起来,富文本格式可见即可得的形式使得人们使用Word手到擒来。可是,君不见多少人在无数个深夜面对怎么弄成这样的文档格式而掉发无数。而markdown不一样,它使用机器的语言和机器进行交流,就像来到中国用中文一样,不再因为蹩脚的外语而造成理解的混乱,也无需再费力去学习外语。
Markdown就像一个可回溯的路标,走错了路可以跟着路标再走回来。而像Word这样的富文本,越往前走,身后的路标离你越远,直至最后消失不见。这对于一个越是往前走,越需要向后回顾的人,无疑是一种不留后路的背叛。
说到这里,我们知道了markdown标记语言和富文本之间的本质不同。那么,现在问题来了,markdown既然是机器语言,那么非程序员的学习成本高吗?
Markdown的学习成本
Markdown虽然是多为程序员使用,但是学习成本并不高,相反使用成本(习惯成本)很高。这个问题理解起来有两个维度,长期和短期。
就短期来看,markdown的使用成本非常高,也许你在富文本格式软件中的效率会是markdown的好几倍。同时,由于markdown遵循严格的语法规范,所以对于字符的缺漏、错位以及需要英文状态下输入,这些问题和富文本形式下的用顺了手、可见即可得产生感受上强烈的差别,使得markdown被完全打趴在地。因此,强烈不建议短期使用markdown标记语言。
长期来看,markdown无疑是一劳永逸的绝佳注解。因为就目前来说,对于纯文本格式的编辑,标记语言无非就三种类型,五分钟就能学会,后续只是需要混个手熟罢了。而对于长期主义者来说,五分钟学好的事,花五个月用熟练,然后一辈子受用,是个再自然不过的事情。以下为最为常用语法:
第一类,文字标记(空格表示文字):* *标示斜体,** **标示粗体,~~ ~~标示删除线,<fanhousuibi@outlook.com>标示超链接(点击即打开邮箱); 第二类,段落标记(空格表示文字):# 标示一级标题、## 标示二级标题、如此增加到六级标题,> 标示段落引用,- 标示无序列表,1. 2. 3. ...标示有序列表,***/---/+++ 标示分割线,~~~ 标示区块,` `标示代码块; 第三类,插入文本的其他标记:[输入网站名称](输入网址)标示超链接,插入图片(/, | | | |---|---|---|插入表格,-[ ]&-[x]任务清单,:emojiname:插入表情 :zzz: insert sleep emoji, | | | 输入[toc]生成文章目录 网址自动变成一个超链接。 footnote[^here is the text of the footnote] [^footnoe]:here is the text of the footnote. [an example][id]参考链接(第二个中括号内容可以省略,第一个中括号这时会被当做id使用) ` `标示代码块 <u> </u>标示下划线 下标 用一个~,如果要写水分子,则是H~2~O(在typora上要在文件》偏好设置》markdown》markdown扩展语法里进行设置 上标 用^前后分隔,比如X的平方可以表示为X^2^ Hold down Cmd(on Windows:Ctrl) and click on [this link](#block-element) to jump to header `Block Elements`. <video src=" ">插入视频 <audio src="xxx.mp3" />插入音频
输入[toc]生成文章目录(TOC:Table of Contents)
You can create footnotes like thisfootnote
[footnote] here is the text of the footnote.
总结一下,Markdown的优点来源
- 专注你的文字内容而不是排版样式
- 轻松的导出HTML、PDF和本身的.md文件
- 纯文本内容,兼容所有的文本编辑器与文字处理软件
- 随时修改你的文章版本,不必像文字处理软件生成若干文件版本导致混乱
- 可读、直观、学习成本低
Markdown语法能在哪使用?
原则上,所有网站上都可以用。但确实也有专门针对markdown进行排版使用的载体。
我们大家比较熟悉的:
锤子便签 简书 印象笔记通过新建markdown笔记 GitHub 马克飞象
很多人用微信公众号发文,其实也是可以用markdown格式的,把写好的文本(包括markdown标记)复制到微信公众号,然后在浏览器安装一个叫“markdown here”(Markdown Here 是一个浏览器/客户端插件,它支持GFM语法,可以一键渲染富文本编辑器中的Markdown语法,这让我们可以使用任意Web编辑器来写邮件。点我下载)
Markdown不仅可以用来渲染微信公众号的文本,还可以用来渲染邮件、自建网站内容、今日头条等。
有专门编写markdown的软件吗?
有!
GitHub出品的atom,专注与苹果设备的Ulysses ,以及在安卓端运行得不错的typora和中文版优化得不错的在线离线都可以编写的Cmd Markdown编辑阅读器都是不错的选择。关键是自己选定了合适的,用顺手就行。
我本人使用的是Typora,Typora和我们前面介绍的markdown形式不一样,它和word一样,也是可见即可得。也就是你打上markdown标记符号后,它就马上显示出效果来,而隐藏标记语言,只有你点击这个部分,标记语言才会显示出来。但如果你发布出去,别人在前端阅读是看不到标记语法的。同时,即便你不习惯使用标记语法,但是你喜欢用快捷键的话,也会得到和markdown语法一样的效果。
推荐使用Typora!
Markdown不能做什么
轻量文本在保证书写顺畅和格式一致性的情况下,对于需要插入进行复杂编辑、排版的文本并不适用。但是日常写写文章、编编代码还是足够用的。
同时,markdown也不能设置字体、字号、字的颜色。
☎️联系我
📷加入频道
✉️邮箱
评论
发表评论