安利一下很好用的markdown编辑器Typora。它功能很强大,具有简洁,跨平台,所见即所得的特点,支持Markdown语法,可以插入数学公式、表情、图标等。下面简单介绍下基本的语法以供编辑时查看,以及几个有用的特性,利用工具特有的便捷设置可以让我们真正实现用工具的效果和达到便捷的目的。
我们可以从官网上下载Typora,她支持mac、windows、linux三个平台。
基本语法
生成目录
输入[toc]
,然后输入回车,就可以自动生成目录列表(table of content)了。
列表
有序列表
在列表前加上数学序号(数字序号和列表内容之间要有一个空格),即可生成有序列表,比如下面代码的生成样式见代码块下的形式
1. 苹果
2. 西瓜
- 苹果
- 西瓜
无序列表
可以在列表内容前加上+
、*
、-
等(符号和列表内容之间要有一个空格),即可生成无序列表,如:
+ 苹果
+ 西瓜
- 苹果
- 西瓜
表格
可以使用Ctrl+T
快捷键来插入表格,按下快捷键之后就会出现一个表格设置,预先设定行数和列数,然后就出现表格了。用户可以直接像在office上编辑表格内容那样对表格进行编辑,并通过每列上的按钮来设置该列的内容的对齐方式(提供向左、居中、向右对齐)。
如果你想增加或删减行数和列数,可以直接通过表格左上角的按钮改变表格的行数和列数。
1 | 2 | 3 |
---|---|---|
4 | 5 | 6 |
图片
对于本地图片,我们可以直接拖进来,Typora会自动识别图片并帮我们生成图片的地址。
URL链接
- 使用尖括号
<>
可以插入url链接的内容,实现自动链接,如:www.baidu.com
,其效果为www.baidu.com。 - 如果不想把链接地址显示出来,只是对链接地址进行说明的话,可以通过
[链接说明](链接地址)
来实现,例如:[百度一下](www.baidu.com)
,其效果为百度一下。
数学符号
一些数学符号可以参见Latex数学符号表。
几个有用的特性
代码块样式(code block)
Typora中的代码块可以设置不同的语言,从而代码块的内容根据不同的语言显示对应的格式。
Typora中还可以提供了不同的样式(theme)供用户选择,内置的样式有五种,当然CodeMirror还提供了一些其他的样式,用户可根据自己的爱好选择不同样式。修改样式的具体方法为:(以Sublime Text的Monokai
样式为例)
- 把样式表的内容复制粘贴到主题目录
themes
下的base.css
或[theme].css
样式表文件内,其中[theme]
表示对应的主题的名字,我使用的主题是Monokai
,所以我修改的是Monokai.css
文件。粘贴进去之后把.cm-s-monokai
统一改成.cm-s-inner
。 - 在新增样式的底部,添加代码块的基础样式到样式表中,如font-family、color和background等属性,完成后的样式表内容应该是类似这样的:
/* Based on Sublime Text's Monokai theme */
.cm-s-inner.CodeMirror { background: #272822; color: #f8f8f2; }
.cm-s-inner div.CodeMirror-selected { background: #49483E; }
.cm-s-inner .CodeMirror-line::selection, .cm-s-inner .CodeMirror-line > span::selection, .cm-s-inner .CodeMirror-line > span > span::selection { background: rgba(73, 72, 62, .99); }
.cm-s-inner .CodeMirror-line::-moz-selection, .cm-s-inner .CodeMirror-line > span::-moz-selection, .cm-s-inner .CodeMirror-line > span > span::-moz-selection { background: rgba(73, 72, 62, .99); }
.cm-s-inner .CodeMirror-gutters { background: #272822; border-right: 0px; }
.cm-s-inner .CodeMirror-guttermarker { color: white; }
.cm-s-inner .CodeMirror-guttermarker-subtle { color: #d0d0d0; }
.cm-s-inner .CodeMirror-linenumber { color: #d0d0d0; }
.cm-s-inner .CodeMirror-cursor { border-left: 1px solid #f8f8f0; }
.cm-s-inner span.cm-comment { color: #75715e; }
.cm-s-inner span.cm-atom { color: #ae81ff; }
.cm-s-inner span.cm-number { color: #ae81ff; }
.cm-s-inner span.cm-property, .cm-s-inner span.cm-attribute { color: #a6e22e; }
.cm-s-inner span.cm-keyword { color: #f92672; }
.cm-s-inner span.cm-builtin { color: #66d9ef; }
.cm-s-inner span.cm-string { color: #e6db74; }
.cm-s-inner span.cm-variable { color: #f8f8f2; }
.cm-s-inner span.cm-variable-2 { color: #9effff; }
.cm-s-inner span.cm-variable-3, .cm-s-inner span.cm-type { color: #66d9ef; }
.cm-s-inner span.cm-def { color: #fd971f; }
.cm-s-inner span.cm-bracket { color: #f8f8f2; }
.cm-s-inner span.cm-tag { color: #f92672; }
.cm-s-inner span.cm-header { color: #ae81ff; }
.cm-s-inner span.cm-link { color: #ae81ff; }
.cm-s-inner span.cm-error { background: #f92672; color: #f8f8f0; }
.cm-s-inner .CodeMirror-activeline-background { background: #373831; }
.cm-s-inner .CodeMirror-matchingbracket {
text-decoration: underline;
color: white !important;
}
/**apply to code fences with plan text**/
.md-fences {
background-color: #272822;
color: #f8f8f2;
border: none;
}
.md-fences .code-tooltip {
background-color: #272822;
}
数学表达式块(math block)
markdown中的数学表达式的语法跟latex的语法一样,习惯latex语法的人可以采用latex的语法编辑数学表达式,但是其中也有一些不同,比如:
数学表达式的斜体字强制为非斜体字:{\rm [非斜体字的内容]}
假设要将表达式中的and改为非斜体字的格式,可以采用 {\rm and}实现。
- 行内公式可以用
$$
后输入回车来插入数学公式。(需要在File
->Preferences
中勾选“Inline math”) - 行间公式可以采用math block来编辑,Typora中使用快捷键
Ctrl+Shif+M
即可显示math block。
- 行内公式可以用
绘制图表
Typora支持在编辑器中直接绘制一些简单的图表,比如流程图等,这样就使我们无须直接从其他地方复制一张图片过来,但是要修改图中的内容时,需要去其他地方修改,再复制粘贴图。
举一个官方提供的例子:
比如代码为:
```mermaid
graph LR
A[Hard edge] -->B(Round edge)
B --> C{Decision}
C -->|One| D[Result one]
C -->|Two| E[Result two]
```
其对应的效果图为:
关于更详细的图表绘制方法简介,可以参考官网提供的内容:Draw Diagrams With Markdown
其他特性
除了以上提到的,可以通过File
->Preferences
来设置一些特性。例如:
- 代码块显示行号:在
Code Fences
这一项中勾选“Display line number”即可。 - 关键词高亮:在
Syntex Support
勾选“Highlight”这一项即可。然后就可以通过在==
中插入需要关键词来实现,如:==关键词==
- 输入emoji表情:只需要输入
:
和第一个字母即可出现候选的emoji表情。如:smile
。
文件转换
markdown和word的转换
使用工具:typora+pandoc
1、下载并安装pandoc
pandoc的下载地址:https://github.com/jgm/pandoc/releases/tag/2.0.5
(注意,Windows选择pandoc-**-windows.msi这个版本即可)
2、重启typora
3、打开要转换格式的文件,选择“File”–>Export–> Word(.docx) 即可。
而如果要从word转换为markdown,则用下面方法即可:
ctrl+c复制word文本,打开typora,ctrl+v粘贴。
参考资料
精美而强大的Markdown编辑器 - Typora http://www.jianshu.com/p/d328692b0486