如何使用Sublime2编辑Markdown文件

1. 我为什么要使用Sublime来编辑Markdown文件

Markdown文件编辑器有三种选择

  1. 使用现有的文本编辑器,安装相应插件
  2. 使用浏览器作为编辑器,安装相应插件
  3. 使用专门的Markdown文件编辑器

对于Option2,做研究如下:

  • Firefox(我的主力浏览器),目前(2016年9月)能支持Markdown编辑的插件主要有:
    • Markdown Here,该插件主要用于email编辑,并不清楚如何保存为Markdown文件
    • MarkDown Editor,该插件最后更新日期为2012年,且用户评价中有不少问题
  • Chrome,目前能支持Markdown编辑的插件(app)主要有:
    • md everywhere,该插件的最后更新日期为2013年,用户也指出了使用中的一些问题
    • Minimalist Markdown Editor,该插件的最后更新日期为2016年5月,而且用户评价颇高。如果不是Chrome在Windows 7下字体渲染的问题没法解决,倒是可以考虑用这个app来试试。
      至此,由于Firefox下没有合用的插件,放弃Option2。

对于Option3,我一直不想引入过多的软件。因此专心采取Option1(MarkdownPad这软件看上去也不错,等以后有机会试试)。

对于Option1来说,我现在有的文本编辑器就是Sublime Text 2(以下简称Sublime);那就找Sublime的插件看看喽(至于我为什么选择Sublime,Sublime/Notepad++/UltraEdit的比较,那需要另外一篇文章来说了)。

2. 为Sublime安装编辑Markdown文件所需插件

Markdown文件实际上就是纯文本文件,所以包括Sublime在内的所有纯文本编辑器都可以用来写作Markdown文件(轻量,这也是Markdown文件为什么这么popular的最重要原因)。

而所谓Markdown支持插件,按我理解就是让编辑器支持Markdown文件预览的插件。
简单搜索之后,知道了要在Sublime里面预览Markdown文件,需要安装一个叫”Markdown Preview”的插件;而为了安装插件,最好先安装一个叫”Package Control”的插件来管理插件(package)。

2.1 安装Package Control

说实话,安装Package Control很不顺利(不过,也正是这种不顺才让这篇文章有价值 —— 让其他遇到同样困惑的人能了解最后这些问题是怎么解决的)。

Package Control的官网是:https://packagecontrol.io/

但是打不开。或者准确地说,我在那时一直打不开。

尝试的操作如下:

  1. 翻墙(这简直成下意识操作了),但是不管用;
  2. 查找packagecontrol.io的真实IP,直接通过IP地址访问,但还是不管用;
    Package Control.io的真实IP
  3. 继续搜索其他各种方法…
  4. 最终在在Github wbond/package_control的repository中搜到了一个帖子Outage Status #1057,wbond(package_control的作者)在其中提到他们的网站一直受到DDoS攻击…

原来我访问不了package_control是这个原因…

类似遇到”无法访问package_control”、”使用package control时遇There are no packages available for installation”等问题的朋友,你很可能也是遇到了这个问题。你可以:

  1. 通过http://status.linode.com/网站来检查Linode主机情况(package control的托管主机所在)。
  2. 检查pacakge control的issue列表,看看最上面有没有类似”Website outage”、”There are no packages available for installation”的issue提出。

如果确认是DDoS导致的Website outage问题,那么等等就好了。

最终,在耐心等待+不断重试后,终于能进入package control官网了:

Package Control官网

点击右上角的Installation,进入安装界面如下:

Package Control安装方法

安装方法就如同此页说的一样:Simple(简单)。

按Ctrl+~呼唤出Sublime的Console,然后将package control官网提供的Python命令粘贴进去执行即可。

Console将在Sublime的底部出现

注意:通过搜索,可以找到很多非官方网站/博客上也提供了package control的安装命令(类似刚才我们copy的那一大堆Python命令)。我严重不建议大家使用!因为你不知道这些命令的安全性。别不留神执行了恶意代码。所以,尽管官方有时会出点问题,但是还是耐心等待官网恢复吧(一般几个小时就会好),毕竟安全呀!

2.2 安装Markdown Preview

安装好Package Control,我们可以通过Ctrl+Shift+P呼唤出Command Palette,输入”install…”来使用它。

使用Package Control来安装package

选中/发出Install Pacakge命令后,Package Control会在线加载package repository,左下角会有提示:

加载package repository

这时候,如果package control的主机又出现问题无法加载,则会报”There are no packages available for installation”错误。请按上面的说明去检索相关issue说明,如果还是主机的问题,那就等等好了。

当repository加载完毕后,会出现package列表如下(这里的截图是在安装IMESupport包时的截图,不过意思一致):

Package列表

选择”Markdown Preview”之后,安装开始,左下角会有提示(这里的截图是在安装IMESupport包时的截图,不过意思一致):

Package安装时的提示

安装好之后,再选择package control中的List Packages,就能看到安装好的packages列表了:

安装好的package列表

好啦,安装至此结束,下面我们就可以通过Sublime来编辑Markdown文件啦!

3. 使用Sublime编写Markdown文档

3.1 编辑Markdown文档

在Sublime里面编辑Markdown文档,就和写普通的TEXT文件或代码一样,直接写就好了。

咦,不过为啥没有语法高亮呢?没有语法高亮,用Sublime和用Notepad记事本来写Markdown有啥区别呀?

没有语法高亮的Markdown编辑界面

语法高亮问题

祭出GOOGLE/BING大法后,很快找到解决问题的方法:

  1. 安装一个叫MarkdownEditing的Sublime插件,或
  2. 换一个主题

当然还是怎么简单怎么来。果然换个主题(Mac Classic)语法高亮就出来了。

出现语法高亮的Markdown编辑界面

把所有主题都试了一遍之后发现,支持Markdown语法高亮最好的要算Mac Classic及Eiffel两个主题了。

不过,人嘛,按照马洛斯的需求层次理论来说,总是在低层次需求满足后,就开始追求高层级的需求了。说文了,就是得陇望蜀;说白了,就是吃到碗里的,就开始惦记锅里的了。

Mac Classic与Eiffel两主题对Markdown的语法高亮支持虽然很好,但是白白的底色太过刺眼。能不能有更好的解决方案(或配色方案)呢?

寻找更加舒适的Markdown主题

继续搜索,发现若干种Sublime配色主题都能对Markdown语法高亮提供很好的支持。

比如”Monokai Extended”、”Tomorrow”等等:

Monokai Extended主题
Tomorrow-Night-Eighties主题

看上去好了很多不是?但列表没有像Mac Class或Eiffel那样高亮,还是有点不开心。

自己动手修改Sublime主题

干脆,撕下温情脉脉的面纱,露出程序员彪悍的本来面目,我自己直接修改Sublime主题吧。

我还是更喜欢Mac Classic的风格,那就以它开刀。在Everything的帮助下,很快定位到Mac Classic主题对应的Mac Classic.tmTheme文件。该文件位于C:\Users\zhexen\AppData\Roaming\Sublime Text 2\Packages\Color Scheme - Default目录中。

虽然没研究过tmTheme文件的语法,但是还是能凭着程序员的经验,找到要修改的应该是下面代码中的background对应的RGB颜色值。

<dict>
    <key>author</key>
    <string>Chris Thomas</string>
    <key>name</key>
    <string>Mac Classic</string>
    <key>settings</key>
    <array>
        <dict>
            <key>settings</key>
            <dict>
                <key>background</key>
                <string>#FFFFFF</string>
...

#FFFFFF果断改为#FDF6E3。为啥果断知道是这个值?用PicPick的取色器直接从我喜欢的”Solarized (Light)”主题里取得的呀。

看看成果:

修改后的Mac Classic主题

不错!满意!

写点什么吧…于是就有了这篇《如何使用Sublime编辑Markdown文件》。

当前网速较慢或者你使用的浏览器不支持博客特定功能,请尝试刷新或换用Chrome、Firefox等现代浏览器