1. 程式人生 > >Windows下開發環境配置

Windows下開發環境配置

筆者由於工作環境要求,需要在 Windows 下進行各種開發。然而由於 Windows 與 Unix 系統十分不同,包括命令列和文字編輯器等工具十分不友好,因此我花了很大精力去調教Windows。為了之後在新的工作環境方便重新配置,我將我的配置方案記錄下來,以便查詢。

Vim的安裝與YCM配置

在 Linux 下最好用的文字編輯器當然是 Vim ,而讓 Vim 如此好用的外掛之一就是 YCM 。YCM 是出了名的難配置,所以我也將其配置方法記錄在案。

Vim的安裝

Vim 有官方網站,但他們只提供32位版的。當你的 Python 是64位版時,呼叫 python.dll 時就會出錯,因此我們需要一個64位版的 Vim。好在已經有開發者維護了一個 Vim 的

32/64位編譯版本,我們可以方便地下載安裝。

Vim的配置

Windows 下 Vim 的配置是通過更改安裝路徑下的 _vimrc 檔案來達到的。在這裡我推薦一個開發者提供的配置 the Ultimate Vimrc。注意如果要將這一配置資料夾放在Vim安裝路徑下,需要避免命名為 vimrc,否則會引起錯誤。以及在 source 路徑時,需要使用絕對路徑,有一個tip是使用環境變數 $VIM 來引導。

除此之外我還有自己的一些需求
1. 顯示行號
2. 在80列處設定紅線,提醒換行
3. 自動將tab換位2格space
4. 自動高亮當前行
5. 可進行程式碼摺疊

set
nu set colorcolumn=80 set ts=2 sw=2 sts=2 et ai set cursorline hi CursorLine gui=none guibg=Grey25 set foldmethod=syntax foldlevelstart=20

YCM的安裝

YCM安裝已經對Windows改善了很多,支援VS2012/13/15,所以即便自己編譯也十分方便。這裡就簡單的將安裝步驟總結一下,更具體的方法可以參閱github上的文件

  1. 先確認自己安裝的 Vim 是 7.4 以上版本,且編譯時支援python 2/3的外掛。可以輸入:version 檢視是否有 +python/dyn
    +python3/dyn。如果是按照本文的方法安裝,則可以保證有python支援。
  2. 下載YouCompleteMe。官網推薦是使用 Vundle 下載,然而筆者不推薦這種安裝方法,原因有二:
    1. Vundle下載比較慢。筆者推薦只下載最淺層的程式碼:git clone https://github.com/Valloric/YouCompleteMe.git --recursive --depth=1
    2. 筆者的環境中有 Vundle 則會導致 YCM unaviable: no module named ycmd,在將其刪除後反而 YCM 可以正常執行。
  3. 下載LLVM/Clang。如果需要支援C++語言,則需要呼叫 libclang.dll,去官網下載安裝最新的 LLVM/Clang 即可。注意將LLVM工具加入Path中,或者將libclang.dll 拷貝到 YouCompleteMe/third_party/ycmd 目錄下
  4. 使用 CMake 生成工程並編譯目錄 YouCompleteMe/third_party/ycmd/cpp 中的 CMake 檔案,工程會自動生成 ycm_core.pyd 並將其複製到對應目錄下
  5. _vimrc 中加入 YCM 的路徑 set rpt+=<path to YCM>
  6. 需要支援C++時,從 third_party/ycmd/examples 中複製 .ycm_extra_conf.py 到對應工程資料夾即可

Powershell 的美化

在windows下由於沒有真正好用的shell,所以有各種各樣的解決方案,如 msys, cmder 等shell工具。筆者都曾嘗試過,但是體驗不算很好。msys 可能是由於io同步的問題,操作起來一直有點卡,而 cmder 的tab補全功能又不是很好用。所以筆者試圖採用美化powershell的方式來打造工作shell。

在此介紹一個powershell風格化的工具 concfg,一鍵更改powershell風格。其作者還開發了windows下的包管理器scoop,以及模仿 Oh-My-Zsh 的擴充套件補全工具 pshazz,讓powershell 也變得十分好用。

按照推薦的安裝方式,分別安裝 scoopconcfgpshazz

有幾點需要注意:

  1. windows powershell 預設設定是不允許執行指令碼,使用 set-executionpolicy remotesigned -s currentuser 對執行策略進行修改
  2. 中文windows的預設內碼表是GBK,如果需要使用其他的字型,如 Consolas,需要將內碼表切換到UTF-8,使用命令 chcp 65001

筆者就通過 concfg 將 powershell 風格設為了 solarize-dark 風格,互動變得十分友好。

Cmder 的安裝和設定

雖然將 powershell 美化能夠方便很多,但是這個方案可能並不總是管用。例如在系統語言為中文的 windows 中,預設 code page 總是 GBK,這使得 powershell 的字型奇醜無比,並且沒法自動更改。所以筆者不得不也裝上 Cmder。

Cmder 安裝很方便,下載解壓即可。需要註冊到滑鼠右鍵選單時,按照 README.md 說明,可以直接在管理員許可權的命令列,執行 .\cmder.exe /REGISTER ALL 即可