Typora支持GFM,还扩展了很多其他的功能(如支持数学公式、上标、下标、高亮、各种图表等),它几乎为每一种标记都提供了快捷的操作方式,并且通过最佳实践规避了一些令人困惑的操作,这使我们的写作变得更加轻松。
在Typora中通过执行:菜单栏→【格式】→【加粗/斜体/代码(行内代码)/图像/超链接】可以添加或移除关于文字 样式 的标记符号。如果没有选中文字,则只会添加标记符号;如果选中了文字,则会为选中的文字添加或移除标记符号。
相关样式的快捷键如下。
小提示: 如果想使用自动补全表情符号的功能,需要到【偏好设置】中去激活:【偏好设置】→【编辑器】→【触发自动完成】→勾选【Emoji表情】,然后在输入Emoji标记语法时,Typora会自动给出补全信息,如下图所示。
在Typora中通过执行:菜单栏→【段落】→【段落/引用/表格/代码块/分隔线/有序列表/无序列表/任务列表】,可以添加或移除关于段落的标记符号。
a)段落与换行
在Markdown中,换行符是比较让人困惑的,对此,Typora的官方建议如下。
1)使用Typora的默认设置。
2)在Typora混合界面(预览界面)写作。
3)使用Enter键插入新段落,避免多插入空行。
4)如果要插入强制换行符,请使用HTML标签<br/>。
最通用的插入强制换行符的方法有两种。
1)在行尾加两个空格然后按回车键。
2)使用HTML标签<br/>实现换行,在默认情况下,<br/>不显示,若想显示可以执行:菜单栏→【编辑】→【空格与换行】→勾选【显示<br/>】。
在Typora中,还提供了一种快速换行的方法,确认勾选保留单换行符:菜单栏→【编辑】→【空格与换行】→勾选【保留单换行符】,然后使用快捷键Shift+Enter换行。
上述换行符可能在导出/打印时被忽略,请到【偏好设置】→【空格与换行】→【导出/打印】去设置是否忽略。
关于Typora中的段落需要知道下面几点内容。
1)如果想要开始新的段落只需按一次回车键即可,所见即所得,查看源码你会发现Typora自动帮我们插入了一个空行。
2)在默认情况下,段落的首行没有缩进,但如果你习惯了首行缩进,可以这样设置:菜单栏→【编辑】→【空格与换行】→勾选【首行缩进】。
3)在表格或图表的前后插入段落不太方便,如果有此需求,可以在表格内单击鼠标右键→【插入】→选择【段落(上方)/段落(下方)】。
b)标题
对标题进行设置的快捷键如下。
小提示: 当标题的级别过多时,除了查看源码,肉眼很难区分它们,有没有什么办法可以更好地区分标题的级别呢?有,把光标放在标题行的任意位置,在标题行的左上角会显示标题的级别(h3/h4/h5),一级和二级标题不显示。
c)列表
Typora支持有序列表、无序列表和任务列表,它们之间可以通过快捷键实现快速切换,还可以使用列表缩进功能快速调整缩进,使用起来非常方便。与列表操作相关的快捷键如下表所示。
1)当光标放在任务列表上时,任务状态被激活,这时才可以“切换任务状态”。
2)列表和代码块都可以使用“增加缩进”和“减少缩进”。
效果如下图所示。
d)引用和水平分隔线
与引用和水平分割线相关的快捷键如下。
e)表格
· 创建表格。
如果想创建一个表格,可以执行:菜单栏→【段落】→【表格】→输入列数和行数→单击【确定】按钮。创建表格的快捷键如下。
除上面所讲的方法外,还有一种可以快速创建表格的比较酷的方式:输入表头的标记语法,在最后一个|之后按回车键,如下图所示。
· 增加行/删除行、复制表格、格式化表格。
对于表格的增加、删除、复制和格式化操作,可以在表格中单击鼠标右键,选择【表格】,通过其列出的操作选项对表格进行操作,如下图所示。
相关快捷键如下。
· 快速调整表格。
如果想快速调整表格的行数、列数、对齐方式,可以将光标放在表格中,表格左上方和右上方都会显示操作菜单,直接进行操作即可,如下所示。
如果想调整表格中行或列的顺序,可将光标放在行的最左边或列的最上边,待光标变成双向箭头后拖动即可调整顺序,如下图所示。
f)代码
· 插入围栏代码块。
如果想添加或删除围栏代码块的标记,可以执行:菜单栏→【段落】→【代码块】。如果想把某段内容使用围栏代码块包裹,需要先选中该内容,然后执行上述操作。
相关快捷键如下。
如果想声明语言,将光标放在代码块中,在代码块右下角的【选择语言】中输入编程语言就可以了。
· 显示代码行数。
代码块默认是不显示代码行数的,如果想显示,则需要执行:文件→【偏好设置】→【代码块】→勾选【显示行号】。
· 自动换行。
在代码块中,如果代码过长,默认是会自动换行的,如果我们不希望代码自动换行,可以执行:文件→【偏好设置】→【代码块】→不勾选【代码块自动换行】。
自动换行与不自动换行的效果对比如下图所示。
Typora扩展了下画线、数学公式、目录、脚注、上标和下标、图表操作等功能,并且支持很多HTML标签,使排版格式变得更加齐全。
a)下画线
在Typora中,下画线是通过HTML的<u>标签实现的,其语法如下。
效果如下所示。
相关快捷键如下。
b)内联数学公式
如果想使用内联数学公式,需要先激活:【偏好设置】→【Markdown扩展语法】→勾选【内联公式】→重启Typora,内联数学公式的语法是使用$把数学公式包裹起来,如下所示。
实例演示如下。
效果如下图所示。
还可以执行:菜单栏 →【格式】→【内联公式】,插入内联公式的语法标记。
设置内联数学公式的快捷键如下。
c)下标和上标
如果想使用上标和下标,需要先激活:【偏好设置】→【Markdown扩展语法】→勾选【下标】、【上标】→重启Typora,其语法如下。
语法说明如下。
1)使用~把下标内容包裹起来。
2)使用^把上标内容包裹起来。
实例演示如下。
渲染效果如下。
还可以执行:菜单栏→【格式】→【上标/下标】,插入上标/下标的语法标记。
d)高亮
如果想使用高亮功能,需要先激活:【偏好设置】→【Markdown扩展语法】→勾选【高亮】→重启Typora,其语法如下。
语法说明如下。
1)使用两个等号(=)把想要高亮的内容包裹起来。
2)设置为高亮的内容显示为黄色。
实例演示如下。
效果如下图所示。
还可以执行:菜单栏→【格式】→【高亮】,插入高亮的语法标记。
设置高亮效果的快捷键如下。
e)注释
如果想添加注释,可以执行:菜单栏→【格式】→【注释】。在编辑和预览时,注释的内容会被显示;在导出PDF或Word时,则会被隐藏。
设置注释的语法如下。
设置注释的快捷键如下。
f)清除样式
如果想快速清除样式,可以执行:菜单栏→【格式】→【清除样式】。
清除样式的快捷键如下。
a)数学公式块
专业的写作离不开数学公式,Typora对此做了很好的支持,其语法是使用两个$包裹数学公式,如下所示。
官方示例如下。
效果如下图所示。
为某段内容添加或删除公式块,需要先选中该内容,然后执行:菜单栏→【段落】→【公式块】。如果不选中任何内容,直接执行:菜单栏→【段落】→【公式块】,则会插入公式块标记。
公式块快捷键如下。
b)目录
在Typora中,可以自动获取文章的标题来生成目录,当标题修改时,目录会随之自动更新,使用起来非常方便,其语法如下。
语法说明如下。
1)TOC是Table of Contents的缩写。
2)在想插入目录的位置输入[TOC],按回车键后就可以自动生成文章的目录了。
直接输入[TOC]标记已经很简便了,可如果我们忘记了语法,也可以执行:菜单栏→【段落】→【内容目录】。
效果如下图所示。
c)脚注
添加脚注的语法如下。
当鼠标放在引用的脚注之上时,会显示脚注的描述信息;若脚注没有定义,则会提示我们定义脚注的语法。
效果如下图所示。
可以执行:菜单栏→【段落】→【脚注】来快速插入标记。插入脚注的快捷键如下。
d)图表(序列图、流程图和Mermaid)
如果想使用图表功能,需要先激活:文件→【偏好设置】→【Markdown扩展语法】→勾选【图表】→重启Typora。
需要注意如下几点。
1)图表是Typora的扩展语法,标准的Markdown语法、CommonMark和GFM都不支持这一语法。
2)如果想要把图表使用到更多的地方,推荐直接插入图片,不推荐在Typora中进行绘制。
3)在Typora中,图表在导出HTML/PDF/ePub/docx等格式的文件时会被正常显示,但是其他的Markdown编辑器不一定支持此语法。
· 序列图
序列图(Sequence Diagram)也被称为循序图,是一种UML(Unified Modeling Language,统一建模语言)行为图,它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。
Typora提供的序列图语法标记功能是基于开源项目(js-sequence-diagrams)开发的,其语法如下。
语法说明如下。
1)使用3个`+sequence包裹js-sequence-diagrams语法。
2)js-sequence-diagrams语法参考https://bramp.github.io/js-sequence-diagrams/。
实例演示如下。
效果如下图所示。
· 流程图
流程图是以图像的方式表示过程、算法和流程的,Typora提供的流程图语法标记是基于开源项目(flowchart.js)开发的,其语法如下。
语法说明如下。
1)使用3个`+flow包裹flowchart.js语法。
2)flowchart.js语法参考http://flowchart.js.org/。
实例演示如下。
效果如下图所示。
· Mermaid
Typora集成了Mermaid,Mermaid支持使用文本的方式生成图表,包括序列图、流程图和甘特图。
1)Mermaid序列图的语法如下(可参考https://knsv.github.io/mermaid/#loops32)。
实例演示如下。
效果如下图所示。
2)Mermaid流程图的语法如下(可参考https://knsv.github.io/mermaid/#graph18)。
实例演示如下。
效果如下图所示。
3)Mermaid甘特图。
甘特图(Gantt chart)是将活动与时间联系起来的一种图表形式,能够显示每个活动的历时长短。甘特图很清晰地标识出每一项任务的起始与结束时间,通常在项目管理中使用,方便人们从时间上整体把握项目进度。
Mermaid甘特图的语法如下(可参考http://knsv.github.io/mermaid/index.xhtml#mermaid-cli)。
实例演示如下。
效果如下图所示。
Typora还支持很多常用的HTML标签,使用这些标签可以让样式更加丰富,但这也导致纯粹的写作变得更加复杂,提高了用户使用的门槛,因此我们在此只列举几个简单的例子作为参考。
a)文字颜色和大小
示例代码如下。
效果如下图所示。
b)嵌入网页
示例代码如下。
效果如下图所示。
注意: 内嵌的网页在导出文件时是无法显示的。
c)插入视频
示例代码如下。
注意: 内嵌的视频在导出文件时是无法显示的。
这些标签的使用专业要求相对较高,不适合普通读者,感兴趣的读者可以到https://support.typora.io/HTML/了解更多。