[vim ] 在 (neo) vim 裡 C 語言程式碼導覽技巧

看板Editor (編輯器(vim/emacs))作者 (KAIKAIKAI)時間3年前 (2020/11/29 01:42), 3年前編輯推噓2(207)
留言9則, 1人參與, 3年前最新討論串1/1
小弟寫了一篇文章,分享我使用 vim 在 C 語言裡程式碼導覽技巧: https://reurl.cc/r8Gkxr # 文章簡介 現代的專案開發,很少在從無到有打造,大部分都是基於現有的程式之上繼續開發或 維護,進入專案之後,通常第一件事就是大量閱讀程式碼理清專案的整個脈絡, 才開始著手寫 code,所以好的程式碼導覽技巧將會帶你上天堂。 我將大部分的程式碼導覽情境大致拆成了三種情況: 1. 基本的跳轉: - #if #endif 中間的程式碼太長,想要跳轉到成對的 #if #endif - cursor 在 {…} block 裡, 這個 block 又臭又長, - 想快速跳轉 block 的開頭和結尾 - 註解長篇大論,想快速跳到註解的開頭或結尾 2. 尋找專案下檔案 (可透過設定 path option 解決) - 跳轉到標頭檔 - 跳轉到指定檔案 3. 使用 source code tagging system 快速挑轉到 function 定義及特定 symbol 等等: 專案相當大的時候,source code tagging system 相當好用,可以快速找到定位, 也不會花掉太多的資源,比起 LSP 的跳轉定義,是較輕量的選擇。 本篇依據上述三種情境,一一講述。 當然,這篇還不是全部,下篇將會提到使用 vim-gutentags 管理各種 tag 如果還有更多好用的使用情境和導覽技巧,歡迎在底下或我的部落格留言 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.231.34.129 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Editor/M.1606585333.A.5F0.html ※ 編輯: as23041248 (61.231.34.129 臺灣), 11/29/2020 01:43:33

11/29 17:12, 3年前 , 1F
推,第一次知道有[#, ]#
11/29 17:12, 1F

11/29 17:13, 3年前 , 2F
不過我目前都轉到用 lsp (coc.nvim + ccls) 了
11/29 17:13, 2F
coc 雖然開箱及用,但是我覺得太複雜了 ccls 不知好不好用,跟 clang 比起來呢?

11/29 17:14, 3年前 , 3F
現在比較不太方便的是從 cpp 跳到 h 檔,a.vim 需要
11/29 17:14, 3F

11/29 17:14, 3年前 , 4F
cpp 跟 h 在同一個資料夾,只是通常都會分開放
11/29 17:14, 4F
不太懂意思 ※ 編輯: as23041248 (61.231.34.129 臺灣), 11/30/2020 13:30:15 ※ 編輯: as23041248 (61.231.34.129 臺灣), 11/30/2020 13:30:57

12/02 10:49, 3年前 , 5F
我用ccls的時候,clangd好像還沒出XD 之後還沒試過
12/02 10:49, 5F

12/02 10:49, 3年前 , 6F
有個 a.vim 的 plugin 可以從目前檔案切換到對應的另外
12/02 10:49, 6F

12/02 10:50, 3年前 , 7F
一個檔案,在C/C++就是c/cpp跟h檔,不過好像只能切到
12/02 10:50, 7F

12/02 10:50, 3年前 , 8F
相同資料夾的檔案,所以有點可惜
12/02 10:50, 8F

12/02 10:51, 3年前 , 9F
文章代碼(AID): #1VmelrNm (Editor)
文章代碼(AID): #1VmelrNm (Editor)