相见恨晚
做开发已经2年多了,GitHub上的代码都copy了不知道多少,但很惭愧,至今没写过任何md文档。最近因为工作的原因,必须写md文档同步工作进度,被迫安装了Typora,发现写md文档竟然这么爽...
基本操作
关于markdown
markdown的语法其实到处都能查到,不过作为记录,在此总结一些常用语法。
提前说明,md的所有语法可以嵌套使用
标题
使用#
的个数表示标题等级, 最多6级
# 一级标题
## 二级标题
...
###### 六级标题
格式
-
粗体与斜体
粗体与斜体通过*或_的个数表示
*斜体* _斜体_ **粗体** __粗体__ ***粗斜体*** ___粗斜体___
-
分割线
在空行输入
***
或___
出现分隔线
-
删除线
文本两端加上双波浪线(
~~
)此行删除 -
下划线
markdown支持html标记,下划线通过
<u></u>
包围实现<u>此行加下划线</u>
<u>此行加下划线</u>
脚注
[^注脚外部文本]:注脚解释内容
列表
-
无序
无序列表可以用* , + , -
3种符号开头+ 第一行 - 第二行 * 第三行
- 第一行
- 第二行
- 第三行
-
有序
有序直接使用数字序号和.1. 第一行 2. 第二行 3. 第三行
区块
用>的个数表示区块的嵌套层级
> 第一层
>> 第二层
>>> 第三层
第一层
第二层
第三层
代码
代码块对于记录代码非常实用,在typora下还能选择语言,更加不同语言有不同的着色。另外,从IDE种复制的代码,能在typora中直接以代码块显示。
-
代码行
一对反引号
``
包围的字符串为代码行'pubulic static void main(String args[]){}'
public static void main(){}
-
代码块
三对反引号
``````
包围的字符串为代码块``` public static void main(String args[]) { System.out.print("Hello World!"); } ```
public static void main(String args[]) { System.out.print("Hello World!"); }
链接
-
显式链接
即直接显示链接地址,用一对尖括号
<>
包围<HTTP地址>
-
隐式链接
不显示链接的地址,只显示连接的名称,点击后能访问到具体地址。格式
[链接名称](链接地址)
[HTTP地址](链接文本)
隐式链接还能于段落标记
#
联动,成为页内链接[实践](#实践)
-
索引链接
可以为链接的地址起名,当多段文本的链接是同一地址时,直接用链接的别名访问
*定义别名* [别名]: HTTP地址 *使用别名链接* [google][google] [一个神奇的网站][google]
图片
-
md语法
和链接格式相似,不过在前面加一个叹号
!
![图片名称](图片地址) ![图片名称](图片地址 "可选图片标题")
-
使用html标签
md本身的图片引入比较局限,不过我们可以使用html的img标签,这样可以设置缩放,宽度等属性。
<img src="图片地址" alt="图片名称" title="可选图片标题" style="zoom:50%;"/>
表格
使用|
分列,使用-
将表头和其他行分开
| 表头1 | 表头2 |
| ----- | ----- |
| 1 | 2 |
| 3 | 4 |
表头1 | 表头2 |
---|---|
1 | 2 |
3 | 4 |
在分割行,可以设置内容的左右对齐和居中
| 表头1 | 表头2 |
| :----: | :----: |
| 单元格 | 单元格 |
| 单元格 | 单元格 |
表头1 | 表头2 |
---|---|
单元格 | 单元格 |
单元格 | 单元格 |
公式
当你需要在编辑器中插入数学公式时,可以使用两个美元符 $$ 包裹 TeX 或 LaTeX 格式的数学公式来实现。提交后,问答和文章页会根据需要加载 Mathjax 对数学公式进行渲染。如:
$$
\mathbf{V}_1 \times \mathbf{V}_2 = \begin{vmatrix}
\mathbf{i} & \mathbf{j} & \mathbf{k} \\
\frac{\partial X}{\partial u} & \frac{\partial Y}{\partial u} & 0 \\
\frac{\partial X}{\partial v} & \frac{\partial Y}{\partial v} & 0 \\
\end{vmatrix}
${$tep1}{\style{visibility:hidden}{(x+1)(x+1)}}
$$
关于typora
markdown的编辑器很多,typora在工作中解除到,感觉很好用,网上的评价也很不错。现在还是beta版本就能做到这样,相信以后能更厉害。
typora使用GitHub制定的GFM标准,本身没有对md语法有任何修改,但提供了很多便利性的功能
实时预览与源码模式
通过typora编写md文档时,效果会实时展示在编辑页面。但如果你想查看md源码,只需点击左下角的</>
标志。
空格与换行
-
空格:在输入连续的空格后,Typora 会在编辑器视图里为你保留这些空格,但当你打印或导出时,这些空格会被省略成一个。
你可以在源代码模式下,为每个空格前加一个\
转义符,或者直接使用 HTML 风格的&nbps;
来保持连续的空格。 -
软换行:需要说明的是,在 Markdown 语法中,换行(line break)与换段是不同的。且换行分为软换行和硬换行。在 Typora 中,你可以通过
Shift + Enter
完成一次软换行。软换行只在编辑界面可见,当文档被导出时换行会被省略。 -
硬换行:你可以通过
空格 + 空格 + Shift + Enter
完成一次硬换行,而这也是许多 Markdown 编辑器所原生支持的。硬换行在文档被导出时将被保留,且没有换段的段后距。 -
换段:你可以通过
Enter
完成一次换段。Typora 会自动帮你完成两次Shift + Enter
的软换行,从而完成一次换段。这也意味着在 Markdown 语法下,换段是通过在段与段之间加入空行来实现的。 -
Windows 风格(CR+LF)与 Unix 风格(CR)的换行符:CR 表示回车
\r
,即回到一行的开头,而 LF 表示换行\n
,即另起一行。
所以 Windows 风格的换行符本质是「回车 + 换行」,而 Unix 风格的换行符是「换行」。这也是为什么 Unix / Mac 系统下的文件,如果在 Windows 系统直接打开会全部在同一行内。 你可以在文件 - 偏好设置 - 编辑器 - 默认换行符
中对此进行切换。
emoji
在 Typora 中,你可以用 :emoji:
的形式来打出 emoji。
文件系统
-
快速打开:你可以通过
文件 - 快速打开...
或Ctrl + P
快捷键快速打开最近的文档。 - 保存:Typora 支持自动保存,一般很少有写好的文档丢失的情况。同时它也提供了诸如「保存」、「另存为」、「保存全部打开的文件...」之类的功能。
- 导入:Typora 支持非常多的文件格式:.docx, .latex, .tex, .ltx, .rst, .rest, .org, .wiki, .dokuwiki, .textile, .opml, .epub。
- 导出:Typora 原生支持导出 PDF,HTML等格式。你可以根据软件内提示安装 Pandoc 插件来导出更多例如 docx,LaTeX 等格式。
实践
-
技术文档
平时工作学习中,遇到不懂的,查阅资料后通过md记录下来真的很快捷,而且可读性极强。
-
公众号文章
正如你所看到,这篇文章就是在Typora下编写的md文档,直接复制到微信后台的富文本编辑器中的效果。今后的文章应该都会通过这种方式编写。