现代化 C++ 开发工具 CLion 从入门到精通
作者:allsochen ,騰訊 PCG 后臺開發工程師
這就是 CLion
幾年前寫過一篇 eclipse C++ 的文章、現在還提 eclipse 的話人民群眾會仇恨我,我的朋友和家人也會嘲笑我,唾棄我。因為 JetBrains 家的系列產品 CLion 體驗耍 eclipse 好幾條街。引用知乎網友對 CLion 和 vim/emacs 的形象比喻,如圖所示:
從圖中可以看出 CLion 的定位是一個完整的現代化 C++工具,包含很多實用的功能,而 vim 則是輕巧鋒利,如果你在 CLion 上用 Vim,那就是拿著刀的機器人。這能量你懂的。
起飛前的前奏
根據上次給大家講解騰訊特有的 windows 開發模式,如下圖所示:
Windows 上的環境需要準備煉丹爐:clion 安裝、cygwin、jce release 的文件、taf 源碼。
以上所有涉及到的軟件都在 30 的開發機上:
/data/home/allsochen/software/clion。
通過 samba 可以直接看到對應的文件。大家可以直接去取,單不用展示出你的剪刀手。不要直接在 samba 上點擊安裝,samba 的性能令人堪憂。
Clion:
安裝:直接點擊下一步,下一步安裝,安裝完成
授權:第一次打開提示授權、支持大家購買正版、有 edu 的 email 可以申請免費試用。其他辦法你們懂的。
啟動參數:由于 clion 是 java 開發的,相對比較耗內存,建議設置最大內存為 4086M,具體的設置在:
C:\Program Files\JetBrains\CLion 2018.1.5\bin 目錄下:
的 clion64.exe.vmoptions 文件,把第三行-Xmx2000m 改為-Xmx4086m,同時打開的項目比較多的同學建議再設置大一些,畢竟我們的開發機有 16G,任性。
Cygwin:
安裝:拷貝 cygwin64.zip 到 c 盤解壓,解壓完的目錄如下:
Path 設置:為了在 cmd 命令下可以用到 linux 上常用的 grep,find 等命令,在環境變量 path 中加入 C:\cygwin64\bin
Jce 依賴文件:
安裝 winscp,通過 winscp 軟件把 30 開發機上的/home/tafjce 目錄同步到 D:/Codes/tafjce 下
設置同步配置,請認真看清楚這里的選項,否則誤刪除開發機上的 release 文件,可能你今年年終獎就 gg 了。是把遠程的目錄同步到本地目錄,方向/目標目錄:本地
設置傳輸設置:只同步*.h/*.cpp/*.mk/*.jce 文件、排除.svn 目錄
階段性同步:第一次全量同步后,后續只需要在開發需要的過程中空閑的時間偶爾同步就 ok 了。
字體:推薦 kotlin 之父,JetBrains 公司 CEO 推薦的字體 Lucida Sans Typewriter
CLion 配置:
復制 config.zip 文件到:
C:\Users\yourname\.CLion2018.1 下
刪除原來的 config 目錄
解壓 config.zip,解壓的目錄如下
這個配置的作用是集成了:瀏覽器 C++開發手冊的編程規約、jce
editor、m2cmake 等一系列開源的插件和我實現的插件。
Vim 配置:
如果你想把機器人和武士刀合體,嘗試下合體后的新力量。
拷貝.ideavimrc 文件到 C:\Users\yourname 的根目錄
Taf 支持:
1)拷貝 taf.zip 文件到 D:\Codes\C++目錄下解壓
起飛
打開 clion,這時候會提示我的一些無效的工程,直接刪除就可以了。然后可以通過 svn、git 或者本地文件引入一個 C++服務,這里切忌不要引入一個具有多個服務的目錄,一個項目一個服務。打開一個服務項目后:
自動部署:
把本地的服務目錄文件自動同步到目標開發編譯的 samba 目錄
配置目標同步目錄:Files->Settings->Other Settings->Quickly Sync
Deployment
配置需要同步到自己的開發編譯目錄,請把 allsochen 改成你的名稱
2)通過菜單 Tools->Quickly Sync Deployment 進行快速同步部署
3)確認部署:Tools->Deployment->Configuration->OK
一定要執行這一步,第二部的插件有 bug,第一次配置會導致不生效,還沒有空改插件。
Cmake:
通過 m2cmake 插件把 taf 的 makefile 相關文件生成 CMakeList.txt 文件。選中項目跟目錄,右鍵菜單《Transfer
TAF makefile to cmake…》
構建項目:選中項目跟目錄,右鍵菜單點擊《Reload Cmake
Project》,也可以通過快捷鍵 Alt+K,Alt+M 進行構建
構建完成后,嘗試下 taf 框架的智能提示和 jce 依賴的智能提示,確認下是否生效。
神秘的力量
Live Tempalte
Live
Tempalte 是模板代碼的抽象,可以快速生成帶有變量的代碼模板。比如在打開的 cpp 編輯器中使用 forv,然后按下 tab 鍵,就會自動生成一個模板 for 循環一個 vector 的模板。從 File->Settings->Editor->Live
Tempaltes 中可以看到已經配置的模板
常用快捷鍵:Help->Keymap reference
JetBrains 的 CEO 說他們的開發工具是不需要用到鼠標的
這里列舉幾個常用的:
Shift+Ctrl+N:打開文件
Ctrl+E:打開最近的文件
Ctrl+Y:刪除一行
Ctrl+F12:列舉出文件的函數,可以輸入字母匹配搜索
Ctrl+Q:變量、函數等的說明文檔
Ctrl+W:擴展選擇
Ctrl+Shift+N:最后編輯點
,,w:屏幕內光標定位 ,,s:再按需要搜索的字母:屏幕搜索字母
Shift+F6:重構命名
Alt+Shift+方向上、下:代碼移動
Shift+Enter:以新窗口打開
更多的需要自己去搜索,只要你用到鼠標的地方,都有一個快捷鍵適合你。
Frame Switch 插件
在不同的項目中切換窗口,支持搜索匹配,快捷鍵 Alt+F2
M2cmake 插件
自動把 taf 的 makefile 生成 CMakeList.txt 文件
https://github.com/Allsochen/clion-m2cmake
QuicklySyncDeployment
自動把項目文件部署拷貝到開發機
https://github.com/Allsochen/clion-m2cmake
目前還有一點小 bug,歡迎有志之士一起維護
Jce Editor
Jce 文件格式化、跳轉、語法提示等,格式化 Alt+Ctrl+L
目前還有一點小 bug,歡迎有志之士一起維護
StringStyle
提供各種字符串之間的轉換,快捷鍵 Alt+M
https://github.com/Allsochen/StringStyle
本文 PPT 源文件可在后臺回復:clion?獲得。
推薦閱讀:
這才是真正的Git——Git內部原理揭秘!
把你的 VS Code 打造成 C++ 開發利器
淺談微視推薦系統中的特征工程
總結
以上是生活随笔為你收集整理的现代化 C++ 开发工具 CLion 从入门到精通的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 这才是真正的Git——Git内部原理揭秘
- 下一篇: 腾讯携手2020全球C++及系统软件技术