Markdown语法及SublimeText下使用技巧

Markdown语法及SublimeText下使用技巧

0.缘起

最近因为一直在学习Sublime Text,所以也就顺便试用了一下ST对Markdown的支持。正好CSDN正在大力宣传新上线的Markdown编辑器,所以方便了日后的博客发布。

首先说一下与Office Word相比,最深刻的几点体会吧:

  • 专注写作内容:不再纠结字体、标题大小、行间距等等版式问题,专注于文章内容本身的编写。一边看电子书,一边在Sublime Text里敲代码练习,还能一边在Sublime Text里敲文档,写作过程不仅变得很高效,而且变得很愉快
  • 代码语法高亮:Word最大的问题就是嵌入源代码很麻烦,写技术博客怎么可能不嵌入源代码?!之前也装过一些Word的扩展插件,但最终效果都不理想。
  • 插入数学公式:这一功能Word中倒是有,但是Markdown借助MathJax实现起来更加简单。
  • 文件占用空间小.md因为是纯文本文件,所以很小巧。相比之下,一个只包含很少内容的.docx动辄就几十、上百k。

发布博客的确快了不少,CSDN的Markdown样式也挺漂亮的。现在感觉唯一不太方便的就是:因为Markdown是纯文本标记语言,没法嵌入本地文件,所以如果文章中引用了图片的话,还需要用老办法,先手动上传到CSDN的图片服务器。

1.基本语法

这里仅简单列一下最常用的语法,完整的语法介绍请参考网上的各种手册。

1.1 标题

从#到######表示h1到h6

1.2 加粗和斜体

*或_之间的文字会变成 斜体,**或__之间的文件会变成 加粗

`之间的文字会强调

1.3 键盘按键

在<kbd>和</kbd>之间的字母会像键盘按键那样显示,例如Ctrl。

1.4 列表

-、+、*都能表示列表,要注意的是 前后都要有空行

  • bullets can be -, +, or *
  • bullet list 1
  • bullet list 2
    • sub item 1
    • sub item 2

1.5 图片

图片、网址、章节引用的方法都类似,语法是:[显示文字](reference)。其中reference可以是:图片链接、网址链接、#章节标题。目前还不知道有什么方法能嵌入本地图片。

1.6 数学公式

详见[3.2 Markdown Preview](#3.2 Markdown Preview)。

2.GitHub Flavored Markdown

GitHub现在成了主流,不仅提供Git代码托管(取代SVN)、Issue追踪(取代JIRA),而且还增强了Markdown的语法GitHub Flavored Markdown,即GFM。GFM使用了Linguist进行语言检测和语法高亮,能为几乎各种语言渲染出漂亮的样式。

2.1 下划线

单词中如果有_的话,GFM会忽略,而不会变成斜体,不然真的很烦!例如,单词wow_great_stuff中的great不会变成斜体。

2.2 语法高亮

可以在“`之间敲入代码,并提示编程语言,例如“`ruby。

require 'redcarpet'

markdown = Redcarpet.new("Hello World!")
puts markdown.to_html

2.3 表格

详见[3.3 Table Editor](#3.3 Table Editor)。

3.Sublime Text插件

3.1 MarkdownEditing

一定要全局配置ignored_packages: [“Markdown”]禁用ST默认的Markdown插件,否则MarkdownEditing中看不到代码染色的效果,也不会有GFM的语法增强。

3.2 Markdown Preview

安装Markdown Preview后,有一些默认选项需要修改。例如,开启代码染色、MathJax支持、解析器列表只保留一个markdown(因为我这github无法连接)。

{
/* Sets the parser used for building markdown to HTML. */
"parser": "markdown", /* Enable or not mathjax support. */
"enable_mathjax": true, "enable_highlight": true, /* Remove github */
"enabled_parsers": ["markdown"]
}

尝试一下,在md文件中输入:

$x^{y^z}=(1+{\rm e}^x)^{-2xy^w}$

如果MathJax配置成功的话,就能看到数学公式:

xyz=(1+ex)−2xyw

更加完整的MathJax语法请参考官方文档

3.3 Table Editor

借助Table Editor插件可以方便的插入表格,类似Emacs中Orgmode一样。

Year Temperature (low) Temperature (high)
1900 -10 25
1910 -15 30
1920 -10 32

但要注意的几点是:

  • 通过Ctrl+Shift+P->Table Editor: Enable for current view开启。
  • 先输入标题行,回车后在第二行输入|-后,按tab键就将进入Table编辑模式。
  • 表格必须与前面输入的文字之间有空行,否则表格会被当成普通文字渲染。
上一篇:React Native 适配Android物理返回键,实现连续两次点击退出


下一篇:关于android app两次点击返回键退出的处理