之前就这个问题写过一篇文章,但是方法非常麻烦,而且需要改st的默认配置文件。之后从网上看到了各种方法,经过整合之后,有一个非常简单的思路也可以配好编译器。
大家可以关注一下st的Build System(在菜单→Tools→Build System),我是最近才知道这套系统非常智能,一般你选择Automatic就好。在最下面有一个New Build System,点击这里会新建一个文件,我们把下面的内容粘贴进去:
{
"cmd": ["g++", "${file}", "-o", "${file_path}/${file_base_name}"],
"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
"working_dir": "${file_path}",
"selector": "source.c, source.c++",
"shell": true,
"variants":
[
{
"name": "Run",
"cmd": ["start", "cmd", "/c", "${file_path}/${file_base_name} & echo.&pause"]
}
]
}然后点击保存,就在弹出对话框的那个文件夹下,命名随意,例如我就命名为mycpp,然后点击确定即可。重启st之后,就可以编译和运行了(我的编译键为F9,运行为Crrl+F9,默认的应该是Ctrl+B和Ctrl+Shift+B)。
Ruby也很简单,把下面的东西粘贴进去即可:
{
"cmd": ["start", "cmd", "/c", "${file_path}/${file_base_name} & echo.&pause"],
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"working_dir": "${file_path}",
"selector": "source.ruby",
"shell": true,
"variants":
[
{
"name": "Run",
"cmd": ["start", "cmd", "/c", "${file_path}/${file_base_name} & echo.&pause"]
}
]
}然后保存就可以了,我给它起的名字为myruby。(有没有发现两个cmd是一样的?我只是怕按习惯而已^_^)
至于之前被我坑过了的同学,可能会发现配置已经改不回来了,那么请打开安装目录下的Data/Local/Session.sublime_session文件,找到你之前的文件(我的是st_run_script.bat),将有关的行删掉即可。
本文的方法好在哪里呢?最重要的就是这里的配置文件保存在当前用户的配置文件夹下,首先不会影响其它用户,其次可以将配置文件带走,下次重装st的时候不会丢失的。
若有什么问题,随时在下面留言~