前文已经介绍了单元格的3种类型,除最常用的代码单元格外,标记(Markdown)单元格也是Notebook的一大特色。本节主要简单介绍Markdown单元格的使用,更详细的Markdown使用说明可以参考其官方文档说明。
Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,可以使普通文本内容具有一定的格式。同时Markdown也是Web编写者常用的text-to-HTML工具。也就是说,Markdown可以使用易阅读、易编写的纯文本格式进行编写,然后将其转换为结构有效的XHTML(或HTML)。
因此,所谓“Markdown”,其实包含两部分,一部分是纯文本的格式化语法,另一部分是将纯文本格式转换为HTML的软件工具。这里主要对Markdown的语法进行说明。
为了提高可阅读性,Markdown的语法完全由标点字符组成,并且这些标点字符在经过精心挑选之后,与其语法指代的含义有所对应。例如,一个单词周围的星号实际上是表明强调,Markdown列表也对应于实际的列表。
Markdown可以内联HTML,但它并不是HTML的替代品,甚至有明显的差别。它的语法集非常小,仅对应一小部分的HTML标签。HTML是一种发布格式,而Markdown是一种写作形式。因此,Markdown的格式化语法仅解决可以用纯文本传达的问题。而对于Markdown语法未涵盖的标记,只需直接使用HTML标签即可。
Markdown的基础语法主要包括以下内容。
1.段落和换行
一个Markdown的段落是由一个或多个连续的文本行组成的,它的前后需要有一个以上的【空行】。普通的段落不应使用【空格】或【制表符】来缩进。
Markdown允许段落内的强迫换行,可以通过在需要换行处插入两个【空格】然后按【Enter】键来实现。
例1.4.1展示了段落和换行的代码。
例1.4.1 段落和换行
运行结果如图1-4-1所示。
图1-4-1 段落和换行运行结果
2.标题
Markdown支持两种样式的标题,即Setext样式和atx样式,其中atx样式更为常用。
Setext样式的标题是通过给标题内容使用【=】(第一级标题)和【-】(第二级标题)加“下划线”的方式来实现。
例1.4.2 Setext样式的标题
注意
只要【=】或【-】数量有两个及以上均可实现标题格式。
atx样式的标题则是通过在行的开头使用1~6个【#】字符再加上一个【空格】分别实现标题的1~6级别。另外,在工具栏的下拉菜单中,如果选择【标题】选项,那么该单元格中就会自动出现一个【#】加上【空格】,也就是atx样式的一级标题格式。
例1.4.3 atx样式的标题
以上两种样式的运行结果是相同的,如图1-4-2所示。
图1-4-2 标题运行结果
3.列表
列表分为有序列表和无序列表两种。有序列表使用数字加上一个英文的句点再加上【空格】表示,无序列表则使用【*】【+】或【-】再加上【空格】表示。
当然,通过在次级列表前面加上4个【空格】或【制表符】也可以实现列表的嵌套使用。
例1.4.4 列表
运行结果如图1-4-3所示。
图1-4-3 列表运行结果
注意
无论在有序列表的标记上使用的数字是什么,它都会从第一行列表的数字开始逐个向下计数。也就是说,即使输入以下代码,也会得到图1-4-3中有序列表部分的相同结果。
例1.4.5 列表
4.引用
Markdown中对文字的引用通过【>】来实现。引用同样可以嵌套使用,【>】的数量表示了引用的嵌套层级。另外,引用的区块里也可以包含其他Markdown格式,如标题、列表等。
例1.4.6 引用
运行结果如图1-4-4所示。
图1-4-4 引用运行结果
5.特殊文本
一些常用的表示文本强调的特殊文本格式,如加粗、斜体、删除线等可以通过在需要强调的文字两端加不同数量的【*】【_】或【~】来实现。
例1.4.7 特殊文本
运行结果如图1-4-5所示。
图1-4-5 特殊文本运行结果
6.特殊格式
(1)分隔线:在一个空白行中输入3个及以上的【*】或【-】或【_】,除符号之间可以插入【空格】外,该行内不能有其他内容。
(2)对齐方式:在需要对齐的文本内容前面加上【<p aIign='orientation'>】,后面加上【】。基本格式为<p aIign='orientation'>文本内容,左、中、右对齐时把【orientation】改成对应的【Ieft】【center】【right】即可。
(3)加下划线:在需要加下划线的文本内容前面加上【<u>】,后面加上【</u>】,基本格式为<u>文本内容</u>。
(4)特殊字符:在特殊字符之前加【\】可以插入一些用于构成Markdown语法的特殊标点符号。
例1.4.8 特殊格式
运行结果如图1-4-6所示。
图1-4-6 特殊格式运行结果
Markdown扩展语法主要包括以下内容。
1.插入代码
代码的插入分行内插入和代码块插入两种。当需要行内插入时,直接将代码用单引号括起来即可;当插入代码块时,有以下两种方式可供选择。
(1)在代码块第一行开头输入4个【空格】或一个【制表符】。
(2)使用3个反引号【】在代码块前后将其括起来。
另外,当需要代码高亮时,可以在代码块之前的【】后面加入代码语言。需要注意的是,插入代码块之前需要至少一个空行。借用例1.3.4中的代码块来进行如下示例。
例1.4.9 插入代码
运行结果如图1-4-7所示。
图1-4-7 插入代码运行结果
2.插入表格
插入表格时,用【|】表示单元格边界,在表格标题行下方插入一行同样列数的【-】,每个单元格中的【-】数量可以为任意个。Notebook中的表格会自动对齐,有良好的格式。同时,为了精简表格的样式,可以省略每行首尾单元格靠表格边框的【|】。与插入代码块一样,插入表格前至少需要一个空行。
例1.4.10 插入表格
运行结果如图1-4-8所示。
图1-4-8 插入表格运行结果
3.插入链接
要在文本中插入链接有以下3种方式。
(1)行内式:用【方括号】来标记链接的文字,然后在【方括号】后面紧接着的【圆括号】内插入网址链接即可。如果还想要加上链接的titIe文字,则可以在网址后面用【双引号】把titIe文字包起来。
(2)参考式:用【方括号】来标记链接的文字,在【方括号】后再接上另一个【方括号】,里面填入用以辨识链接的标记,然后在文件的任意处把这个标记的链接内容定义出来。链接内容的格式为:带有辨识标记的【方括号】加上一个【冒号】加上一个以上的【空格】或【制表符】再加上链接的网址,然后可以选择性地加上titIe内容,用【单引号】【双引号】或【括号】包着。
(3)自动链接:用【<】和【>】把网址链接包起来,最终直接显示网址链接。
例1.4.11 插入链接
运行结果如图1-4-9所示。
图1-4-9 插入链接运行结果
4.插入图像
插入图像的方式有两种:行内式和参考式。与插入链接的方式类似,只需在插入链接的方式前面加上【感叹号】即可。
例1.4.12 插入图像
运行结果如图1-4-10所示。
图1-4-10 插入图像运行结果
5.插入LaTeX公式
在Notebook中插入LaTeX公式的方法有很多,Notebook的官方文档中也给出了许多例子。这里只作简要的介绍。
(1)插入行内公式:在公式两边都用【$】包起来。
(2)插入整行公式:在公式两边都用【$$】包起来。
例1.4.13 插入LaTeX公式
运行结果如图1-4-11所示。
图1-4-11 插入公式运行结果