在 Linux 系統上,使用 VIM trace code 對很多人而言是很「無奈」的選擇,畢竟 Windows 的編輯器用習慣啦!什麼 Ultraedit、notepad++,真是好用又大碗。不過自從我自己開始活用這幾招以後,現在上班用 VIM trace code 才真正覺得通體舒暢阿!這次的重點就放在兩個按鍵:
* 和 % ,星號與百分號。
這篇不討論其他的工具和外掛,只以 VIM 內建功能為主。
首先,在看程式碼的時候,我們總是會想追蹤某個變數的來龍去脈,笨笨的方法就是用「 / 」搜尋,然後輸入變數名稱,接著該變數就被 highlight 了,相當棒,但是實在太慢了!VIM 聽到了大家的心聲,於是我們只需要在想追蹤的變數上面按下不起眼的星號「 * 」,哇,自動就 highlight 了!接著用 n 往下搜尋,N 往上搜尋。但是有時候程式碼很長,我們想要看變數在哪宣告怎麼辦?若是區域變數,這時只需要打
gd
GOOD!馬上跳到宣告的地方。若是全域變數怎麼辦?全域的聽起來比較利害,那就改成大寫 D 囉。
gD
一樣輕鬆。再配合 VIM 書籤的功能,於是我們就可以在程式碼中隨興所欲的跳囉。
而有時候我們會遇到另一個狀況,就是有人的函式寫的長~~長~長~,動輒兩三百行,想直接看一下結尾到底是回傳什麼又好遠,這時候我們可以用括號匹配算子百分比符號 % 來幫助我們。在函式的左大括號按下 % ,馬上就會跳到對應的右大括號了。另外有時候一些函式呼叫裡面塞了一堆括號,這時候用百分比符號 % 就可以很快的幫我們理解。除此之外,% 還藏了一個特異功能,那就是他也可以對應 C 語言的巨集!比如說
#ifdef SYS_APPS
.....
#else
.....
#endif
在上面的程式碼中,% 可以快速的在 #ifdef 、#else、#endif 中切換,這招讓我在公司 trace code 的時候輕鬆多了 XD!
留言列表