MarkDown是一种轻量级标记语言,它解决的问题是如何用简洁易读的方法来统一文本格式的编辑与显示。
在历史上具备类似功能的当然不只MarkDown一家,写学术论文通用的TeX排版系统、基本之基本的超文本标记语言(HTML)和另一超好用的可扩展标记语言(XML)都是如此。
MarkDown相比之下有什么优势呢?引用这个链接的说法如下:
- 比latex/html/xml等更加便捷,可读性更高。
- 使用纯文本写作,可以方便等进行版本控制。
- 通过pandoc等工具可以方便等转换为docx/html/latex等多种格式。
当然,先不用管其它理由,只两点便应该足够说服我们学习使用MarkDown:
标记语言赋予一些符号特殊的功能,如此一旦在文本中直接输入这些符号则开启相应的功能。几乎所有符号都是写在其所起作用的文本之前,有时可以不必明确作用范围,有时则必须明确,这在不同的书写规范中要求不一。
那么哪些符号是具有功能的呢?如何使用呢?对此我觉得没有必要一一写出来,毕竟在这个网络时代,优秀的入门教程可以说是唾手可得,我下面做的则是给出我读过且认为十分ߑ짚䦕駨뤹멓壀⠠
首先是这个链接。作者在其中先简述了一点历史,然后把基础应用一网打尽了。
再来是Markdown 语法说明 (简体中文版)。哇塞,这个内容就多了,读了之后基本功就算打好了。以后要从专注于书写格式的MarkDown走向更为高级的应用方向时,就去学习专注于发布格式的HTML和专注于样式变化的CSS吧(字体颜色之类的改变就靠它们了,MarkDown不是用来干这个的)。
在此简单提一下<br>
,这是HTML中的换行。因为在MarkDown环境中通过打多个回车是实现不了多空行的,最后只会显示空了一行,这时<br>
便派上用处,想空几行就输入几个<br>
。
还有段内强制换行的做法再强调一下。其方式是使用两个及以上空格加上回车,如果没有两个及以上空格而直接回车,在最后显示时是不会换行的。
前面说过MarkDown是有不同的书写规范的,书写规范的存在是为了方便不同参与者之间的交流合作,所谓没有规矩而不成方圆。虽然各自有各自的风格不代表不好,可是参考牛人的做法总是会得益的。对此,简书上的Markdown 写作规范参考值得一观。
这里提一下符号\
的使用,前面的教程中有说到如果想要显示特殊功能符号本身到话,需要在其之前打一个\
,这是转义,相当于关闭了\
之后符号的功能。那如果想要显示\
呢?标准格式是打\\
。当然了,如果\
后不是特殊符号,那么最后\
本身也会显示出来,可是这种偷懒做法就是违背书写规范的一个例子,并不提倡。另外两个反单引号括起来的部分也是被转义的,可根据情况使用。
说到简书,我看了其平台上的Markdown 简明教程,结果发现简书平台和GitHub上对于MarkDown的实现略有区别。
例如,简述上说有序列表有默认实现的功能,即打了1.之后不用输入2.,打*
便自动显示为2.。这样的结果我在GitHub上试不出来,可见这些如同不同方言一般。至于是否还有其它方言似的区别,有待日后探索了。