Markdown 扩展语法
发布网友
发布时间:2024-10-01 21:35
我来回答
共1个回答
热心网友
时间:2024-11-30 06:14
等级:⭐⭐ 难度:⭐ 趣味性:⭐⭐
简介
Markdown 基础语法由 John Gruber 设计,简单实用,但无法满足所有用户需求。因此,扩展语法应运而生。扩展语法由个人或组织设计,在基础语法基础上增加高级功能,如表格、语法高亮、任务列表、自动链接、表情等,这些不同的扩展被称为 Flavor。目前流行的 Flavor 有:
扩展语法在不同应用中可能存在兼容性问题。Markdown 应用开发者会根据喜好支持不同的 Markdown 应用,但大部分应用都向 GFM 看齐。应用支持的 Flavor 可以从官方网站或帮助文档查询到。
接下来学习常用的扩展语法。
表格 Tables
表格是常用的功能,由行列数据加上边框组成。数据已有,只需用符号表示横竖边框即可表示整个表格。横边框用减号-表示,竖边框用管道符号|表示,绘制出的表格如下:
渲染效果:
(由于知乎不支持表格,所以这里并不显示)
要点:
手动用减号和管道符号写表格比较麻烦,可以借助 Markdown 应用的自动表格功能快速生成表格,如 Typora。
对齐 Alignment
表格的另一个需求是对齐,如涉及数字需要右对齐。设置表格对齐非常简单,在减号-的左右加上冒号:即可。
渲染效果:
(由于知乎不支持表格,所以这里并不显示)
单元格格式 Formatting Text in Tables
单元格只能使用一部分 Markdown 行内语法。例如:链接、转义、代码(行内代码`,不支持代码块)。
不支持的 Markdown 语法:标题、列表、水平分割线、图像、HTML 标签。
转义管道符号 Escaping Pipe Characters in Tables
由于表格内管道符号|比较多,不能简单地用\进行转义。如果要渲染显示|,可以用它的 HTML 字符( | )表示。
围栏代码块 Fenced Code Blocks
基本语法使用缩进创建代码块,非常不方便,且容易出错,围栏代码块就是代替它的。
代码块一般用来显示示例代码,通常会另起一行,不和正常段落混在一起,使用三个反撇号()包裹。
渲染效果:
语法高亮 Syntax Highlighting
围栏代码块还有一个很厉害的功能,可以标识出代码所用的语言,应用就会根据不同的语言渲染出不一样的代码效果。
如下图所示,右边预览有两个代码段的渲染效果,上面代码段没有指定所用语言,所以应用不能正确识别代码语法,都渲染成了黑色。下面的代码段指定了javascript 语言,应用就可以根据 javascript 语法规则识别关键词、变量、数字、注释等,关键词渲染成了蓝色,数字渲染成绿色等。如果你已经知道代码的语言,尽量写上去,让它更漂亮、易读。
注脚 Footnotes
脚注允许您添加注释和引用,而不会使文档正文混乱。创建脚注时,添加脚注引用的位置会出现带有链接的上标数字。读者可以点击链接跳转到页面底部脚注的内容。
若要创建脚注引用,请在括号([^1])内添加插入符号和标识符。标识符可以是数字或单词,但不能包含空格或制表符。标识符仅将脚注引用与脚注本身相关联—在输出中,脚注按顺序编号。
使用另一个插入符号和数字添加脚注,括号内有冒号和文本([^1]:我的脚注)。你不必在文件末尾加脚注。您可以将它们放在除列表、块引号和表等其他元素之外的任何位置。
渲染效果:
(由于知乎不支持,所以这里并不显示)
标题 IDs (Heading IDs) {#custom-id}
许多 Markdown 应用支持自定义标题 ID,有些 Markdown 应用会自动添加。自定义标题 ID 类似 HTML 里的锚点,它允许你直接链接到标题并使用 CSS 修改他们。
如果要自定义标题 ID,将自定义标题 ID 用大括号括起来,放在标题的末尾,如:
渲染成的 HTML 如下:
链接到标题 IDs (Linking to Heading IDs)
通过一个带有井号键# 和自定义标题 ID 的标准链接 [title](#custom-id),就可以链接到自定义 ID 的标题。点击这个链接将跳到标题 ID 的地方。
VSCode 并不支持 标题 IDs
定义列表 Definition Lists
定义列表用来定义术语和它的解释。要创建定义列表,第一行输入术语,第二行输入冒号和空格:,紧跟着是解释,也可以是多段解释。
转化成 HTML:
渲染效果:
西瓜
一年生蔓生藤本;具明显的棱沟,被长而密的白色或淡黄褐色长柔毛。
苹果
苹果是蔷薇科苹果亚科苹果属植物,其树为落叶乔木。苹果营养价值很高,富含矿物质和维生素,含钙量丰富,有助于代谢掉体内多余盐分。一种低热量的食物,每100克产生大约60千卡左右的热量。苹果中营养成分可溶性大,容易被人体吸收,故有“活水”之称。
VSCode 并不支持定义列表
删除线 Strikethrough
可以用横线划掉某些词语,效果像这样 ~~删除~~。要删除词语,在词语前后使用两个波浪号~~。
渲染效果:
任务列表 Task Lists
任务列表允许你创建带有复选框的项目列表。在支持任务列表的 Markdown 应用中,内容旁边将显示复选框。要创建任务列表,请在任务列表项前面添加减号(-)和带空格的方括号([])。要选中复选框,在方括号([x])之间添加一个 x。
请注意:减号和中括号需要一个空格,中括号内也需要一个空格,总共两个空格。
渲染效果:
(由于知乎不支持,所以这里并不显示)
表情 Emoji
有两种方式可以添加表情:
复制粘贴表情 Copying and Pasting Emoji
最简单的方式是从其他地方复制表情,然后粘贴到 Markdown 文档中。Markdown 应用会自动显示表情,从 Markdown 应用导出的 HTML 或 PDF 文档也会正确显示表情。前提是 Markdown 支持表情。
推荐使用 Emojipedia 搜索表情,这个网站有丰富的表情,每个表情有详细的介绍,在不同设备上的显示效果。
表情代码 Emoji Shortcodes
许多 Markdown 应用还支持直接输入表情代码。表情代码用前后两个冒号:包裹着名称,如下:
渲染效果:
一些表情代码查询资源:
在使用表情代码时一定要注意,不是所有 Markdown 应用都支持表情代码,而且显示的效果随应用而定,在不同的设备显示效果也不尽相同。
自动链接 Automatic URL Linking
Markdown 应用只要识别到内容是网址格式,会自动转换成可点击的网址。
渲染效果:
你可以打开百度搜索 .com
禁用自动链接 Disabling Automatic URL Linking
有些情况不需要自动链接,可以关掉。
渲染效果:
你可以打开百度搜索https://www.baidu.com