用慣了臃腫的VS2013,有時候想寫個小項目,小測試程序,編輯瀏覽代碼什麼的不想
總打開它,於是我折騰了一下Sublime Text2 這款現代化高大上的強大代碼編輯器,它的定位
在於綠色輕巧,速度快,且跨平臺支持Win/Mac/Linux,支持32與64位,但它需要配合衆多
的插件一起使用,所以比較適合喜歡折騰的人。
另外,Sublime Text2 通常用於前端開發,例如HTML,PHP神馬的,亦或者是寫些腳本神馬的,
像Lua, Js之類的,但估計用它來寫VC的還真不多,畢竟有VS這等便利神器,所以我就在這裏
分享一下如何來用它搭建VC編譯環境。
前提:
(一).關於Sublime Text2的下載
關於Sublime Text2的下載就不詳細說了,可以到官方下載英文版的,再用註冊機破解,若想
使用中文,可以進行中文漢化,如果想省事一點,也可以直接去網上下載中文破解版的。
(二).關於Package Control
這是一個便於管理其他插件的插件,但是在天朝你必須能用VPN或用代理翻牆,否則你獲取
不了更新也是白搭,但它並不是必須的,你可以到github或其他下載源下載插件,手動管理
將插件包放在Sublime Text2/package目錄下。
(三).關於MS的Cl編譯器的使用
這裏我不打算使用MINGW的GCC/G++, 因爲是VC工程,所以應該搭建VC下的Cl編譯器更合適,
而且我也習慣了使用這個編譯器。(把它從VS2013下偷來用用又有何妨?)
正式搭建:
(一).設置環境變量(若沒有,則新建)
這裏以本機爲例:
1.在系統變量的INCLUDE中添加
E:\Ultimate_VS2013\VC\include;
C:\Program Files (x86)\Windows Kits\8.1\Include\shared;
C:\Program Files (x86)\Windows Kits\8.1\Include\um;
C:\Program Files (x86)\Windows Kits\8.1\Include\winrt;
2.在系統變量的LIB中添加
E:\Ultimate_VS2013\VC\lib;
E:\Ultimate_VS2013\VC\atlmfc\lib;
C:\Program Files (x86)\Windows Kits\8.1\Lib\winv6.3\um\x86;
C:\Program Files (x86)\Windows Kits\8.1\Lib\winv6.3\um\arm;
3.在系統變量中新建VC_BIN,添加
E:\Ultimate_VS2013\VC\bin;
C:\Program Files (x86)\Windows Kits\8.1\bin\x86;
C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools;
E:\Ultimate_VS2013\Common7\IDE;
並將其添加到系統變量的Path變量中,如%VC_BIN%
友情提示:剛添加完可能不會立即生效,此時需要重啓機器,在cmd中輸入set命令可以查看設置是否成功。
(二).New Build生成新編譯系統文件
1.點擊 【工具-》編譯系統-》新編譯系統】, 在文件中添加以下代碼,並另存爲VC++.sublime-build
{
"cmd": ["CL", "/Fo${file_base_name}", "/O2", "${file}"], // For CL on Windows
"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
"working_dir": "${file_path}",
"selector": "source.c, source.c++",
//"encoding": "utf-8",
"encoding": "cp936",
"variants":
[
{
"name": "Run",
"cmd": ["CMD", "/U", "/C", "CL /Fo${file_base_name} /O2 ${file} && ${file_base_name}"] // For CL On Windows
}
]
}
2.保存後將編譯系統設置爲VC++,如圖:
(三).導入VC中默認繼承的lib庫
我們可以寫一個頭文件,手動導入這些lib庫,例如:
(四).下載ConvertToUTF8插件
因爲Sublime Text2對中文的支持不是很好,所以我們需要這個插件來管理中文字符亂碼
等問題,我們可以按下Ctrl+Shift+P輸入Package Control來管理該插件的安裝。
(也可以直接下載放在SublimeText2/Package目錄下)
這裏,我以一個WIN32程序的編譯運行來說明該插件的作用,在這裏我事先寫好了一個傳送
一張位圖顯示的GDI程序,把它保存在main.cpp中。我們首先點擊main.cpp文件,然後按下
Ctrl+Shift+B, 之後它便開始編譯運行了,然後我們可以看到發生了一個編譯錯誤:
在這裏,“常量中有換行符”的錯誤正是中文字符所帶來的,解決方案是保存爲UTF-8含BOM格式,然後再
Ctrl+Shift+B編譯運行就不會有問題了:
運行結果:
(五).關於SublimeClang插件和API代碼提示功能
因爲Sublime Text2本身只支持已有變量的代碼提示,如果不想一味參考MSDN,
可以使用SublimeClang插件來提供關於C++ API的代碼提示功能,SublimeClang
可以用Package Control獲取,我這裏另外提供一個下載地址:http://pan.baidu.com/s/1hq7iXHM
另外,關於SublimeClang的使用,我順帶提一下好了,在Package中包含該插件後,
我們可以點擊Preferences->Package Settings->SublimeClang->Settings User保存一下代碼
來進行一下自己的設置,我這裏把錯誤檢查關掉了,感覺有點問題:
{
"show_output_panel": false, //底下的代碼提示框顯示
"show_visual_error_marks": false, //錯誤的紅色框框顯示
"dont_prepend_clang_includes": true, //是否不包括clang自身的頭文件。建議用true取消包括,以防產生衝突
"options":
[
//"-IF:\\Graphic_proj"
]
}
"options"裏添加的SublimeClang識別的頭文件路徑,這樣就可以識別從而使用代碼提示功能了,
因爲我們之前設置了環境變量,所以這裏就不用添加了,具體用法可以參考
Preferences->Package Settings->SublimeClang->Settings Default 裏頭,
設置成功後,我們就可以使用如下的代碼提示功能了: