Sublime and Markdown
文章目录
安装 Sublime
Install Sublime Text 3,付费软件,但可以无限期免费使用。只是时不时的会弹出一个要求你购买的弹窗。
设置 Sublime
- 关闭自动打开上次保存文件
Sublime Text 3默认每次打开都会自动打开上次保存的文件,可以这样进行关闭,打开Preferences->Settings User,输入:
{
"hot_exit": false,
"remember_open_files": false,
}
其中,“hot_exit”: false,“remember_open_files”: false表示关闭自动打开上次保存的文件。
- 把sublime text 3添加到右键菜单中
如果在打开文件时,鼠标右键,菜单中没有 Open with Sublime Text 选项的话,可以参考
把sublime text 3添加到右键菜单 进行设置。
安装插件
Package Control
这个插件是用来管理(安装/删除)插件的。
- GUI方式:
Open Sublime->Tools->Install Package Control->得到一个弹窗:Packge Control was successfully installed…表示安装Package Control成功。 - CLI方式:
Open Sublime Text 3->按住Ctrl+~,打开/关闭Sublime的命令窗口->输入Python命令:
import urllib.request,os; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); open(os.path.join(ipp, pf), 'wb').write(urllib.request.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ','%20')).read())
->重启Sublime即可。
注意:此命令只针对Sublime Text 3。需要Sublime Text 2的命令的话要自己在网上找。
- 手动安装:
下载Package Control 的安装包:Package Control.sublime-package->Open Sublme->点击Preferences->选择Browse Packages->进入打开的这个目录(Packages)的上层目录(Sublime Text 3)->进入Installed Packages这个目录->把Package Control.sublime-package放到这里,最终得到Sublime Text 3\Installed Packages\Package Control.sublime-package这样的结构->重启Sublime
注意:Sublime的Package在Windows下默认安装在C:\Users\用户名\AppData\Roaming\Sublime Text 3\Packages\里面,如果想要更改Package的安装位置到Sublime的安装路径(一般非C盘)下,可以安装目录下新建Data目录(如安装目录“D:\Program Files\Sublime Text 3\”下),重启Sublime,再次安装 Package Control,安装过Package Control之后,会在新建的Data文件夹里面生成如下文件:
其中除了Cache在C:\Users\用户名\AppData\Roaming\Sublime Text 3\ 下面找不到外, 其它4个都可以在C:\Users\用户名\AppData\Roaming\Sublime Text 3\ 下面找到。直接把C:\Users\用户名\AppData\Roaming\Sublime Text 3\下面的4个文件夹复制到D:\Program Files\Sublime Text 3\Data\下面, 覆盖掉D盘里面的那4个同名文件夹。现在插件就转移到D盘下了,之前的设置也会保留,以后再安装插件就会直接安装到D盘,C盘的那个目录就可以删除了。
MarkdownEditing
Markdown编辑器,是Markdown写作者必备的插件,不仅可以高亮显示Markdown语法还支持很多编程语言的语法高亮显示。 MarkdownEditing只针对 md / mdown / mmd / txt 格式文件才启用。
- 安装:Command / Ctrl+Shift+p 或者点击 Preference->Package Control打开命令面板,输入pcip,选择Package Control: install package,输入MarkdownEditing,按下Enter,可以看到sublime下面显示正在安装MarkdownEditing,等待安装完成。
Markdown Preview
Mardown Preview不仅支持在浏览器中预览markdown文件,还可以导出html代码。
-
安装:和安装MarkdownEditing一样。
-
使用:通过按组合键Ctrl+Shift+P或是点击Preference->Package Control调出命令面板,输入mdp,选择Markdown Preview: Preview in Browser。选中后,你会看到三个选项:GitHub,Gitlab和Mardown。GitHub选项意味着使用GitHub的在线API来解析.md文件。它的解析速度取决于你的联网速度。据称有每天60次访问的限制。但能免费获得GFM格式的语法支持和EMOJI表情的支持。
-
快捷键:Sublime Text支持自定义快捷键,markdown preview默认没有快捷键,我们可以自己为preview in browser设置快捷键。方法是在Preferences -> Key Bindings User打开的文件的中括号中添加以下代码(可在Key Bindings Default找到格式):
{ "keys": ["alt+m"], "command": "markdown_preview", "args": {"target": "browser", "parser":"markdown"} }
这里:
"alt+m"可设置为自己喜欢的按键。
“parser”:“markdown"也可设置为"parser”:“github”,改为使用Github在线API解析markdown。
设置完成后,以后在编辑好Markdown文档并保存后就可以通过按alt+m在默认浏览器中打开一个新的标签页来预览Markdown文档了。
- 语法高亮&mathjax支持:
语法高亮跟编辑器的主题有关,可以在Preferences ->Color Scheme找自己喜欢的主题。
设置mathjax支持需要在Preferences ->Package Settings->Markdown Preview->Setting User中增加如下代码:
{
/*
Enable or not mathjax support.
*/
"enable_mathjax": true,
/*
Enable or not highlight.js support for syntax highlighting.
*/
"enable_highlight": true,
}
LiveReload
LiveReload是一个可实时刷新的插件,其功能是一旦我们在Sublime中保存了Markdown文档,那么这个LiveReload插件就会自动在网页中帮我们刷新预览界面。
- 设置Markdown Preview:
为了实现Markdown Preview和LiveReload的配合使用,需要对Markdown Preview进行一些设置:Preferences -> Package Settings -> Markdown Preview -> Settings。检查左侧enable_autoreload条目是否为true,若是,跳过。若不是,右侧栏加一条下面这个后重启Sublime:
{
"enable_autoreload": true
}
- 安装LiveReload
- 使用LiveReload:Ctrl+shift+p, 输入livereload,选择LiveReload: Enable/disable plug-ins, 回车, 选择 Simple Reload with delay (400ms)或者Simple Reload,两者的区别仅仅在于后者没有延迟。
补充:
实现浏览器自动刷新还有一种方法:
在md文件最下面加入一行:<meta http-equiv="refresh" content="0.1">
其中0.1表示刷新间隔,单位是秒。为了不让滚动时编辑的新文字触底,我们在最后一行的刷新代码之上打好几个占空间的行即可。 由于空行不会被解析,我们在每一行之前放一个字符#或者打三个以上的减号表示分割线。
auto-save
auto-save可以使一个文档实现空闲x秒后自动保存。
- 安装auto-save
- 设置:Preference->Package Settings->Auto-save->打开Settings-Defualt和Settings-User
将Default的内容复制粘贴到User里面,然后修改等待时长:
"auto_save_delay_in_seconds": 0.15,
0.15是一个比较能接受的值,不会对磁盘造成频繁读写的影响,延迟也不大。 - 使用:按下ctrl+shift+P打开快速菜单,输入auto,选择Toggle AutoSave:current file only,状态栏显示Autosava Turned On
到此我们就可以实现像CSDN中的Markdown编辑器差不多的效果了,其中一个差别就是浏览器中的页面不会随着你在Sublime中页面的滚动而滚动。
OmniMarkupPreviewer
可以直接实现Markdown Preview+LiveReload+auto-save的功能,即可以实时预览自己编辑的内容。但美中不足的是其不能显示[TOC]
(有的文章里写到可以显示,但我试了不行),但可以通过安装MarkdownTOC这个插件来一键生成目录,但这个目录是文字格式(不能跳转)的不像Markdown Preview中的目录是链接格式(可以跳转)的。
Evernote
这款插件可以实现使Sublime Text和Evernote相关联,在Sublime中编辑Markdown笔记后可以直接保存到Evernote中。
- 安装 Evernote 插件
- 获取Token
- 打开Preferences > Package Settings > Evernote > Settings-User
输入:
{
"noteStoreUrl": "XXX",
"token": "XXX"
}
-
测试是否成功:通过shift+command / Ctrl+p打开命令窗口,输入Evernote,就会看见Evernote的许多命令,点击Evernote:list recent notes,如果看到罗列出最新的笔记,则说明授权成功
-
快捷键:打开 Preferences > Key Bindings - User 输入以下的设置:
[
{
"keys": ["ctrl+e", "ctrl+p"], "command": "show_overlay", "args": {
"overlay": "command_palette", "text": "Evernote: "} },
{
"keys": ["ctrl+e", "ctrl+o"], "command": "open_evernote_note" },
{
"keys": ["ctrl+e", "ctrl+s"], "command": "send_to_evernote" },
{
"keys": ["ctrl+e", "ctrl+u"], "command": "save_evernote_note" }
]
Item | Value |
---|---|
Ctrl+e,Ctrl+p | 打开Evennote的命令面板 |
Ctrl+e,Ctrl+o | 打开云端的印象笔记本 |
Ctrl+e,Ctrl+s | 发送到Evernote |
Ctrl+e,Ctrl+u | 保存已有笔记到Evernote |
- 模板配置
每次新建一个文件,我们可能需要一些模板,这是可以实现的。在 Sublime 的菜单栏打开 Preferences > Package Settings > Evernote > Settings-User 键入以下的字段:
"default_template": "Packages/User/EvernoteNote.md",
然后打开 Preferences > Browse Packages… 打开User文件夹,新建一个EvernoteNote.md文件作为一个模板,需要注意的是,需要把这个文件转换为UNIX格式,才能正常的使用。参考(我试了一下没有成功,可能是格式问题)
还可以使用Sublime Tmpl这个插件,但它只能添加一定格式的模板,不能实现像CSDN或一些在线Markdown编辑器一样在开始界面有Markdown使用方法介绍。
http://blog.jobbole.com/96993/
插件&主题
代码高亮:
markdown里嵌入的代码在生成html文档时,支持根据语言高亮显示。通过 Preferences -> Package Settings -> Markdown Preview -> Settings-User 来打开用户设置文件,加入如下内容即可打开代码高亮功能。
{
"enable_highlight": true
}
如果需要更高级的高亮显示,比如指定代码高亮的风格(emacs, vim etc.),则可以自定义 codehilite 扩展来实现。在Markdown Preview用户设置文件里加入如下内容即可。本文就是使用 emacs 高亮风格来显示代码的。
{
"ena