原文: http://cyang.tech/2017/03/19/Source Insight 更新4.0版本/
source insight 終于大版本更新了。我開始使用 SI 是去年,那時候是 3.5 的版本,就覺得這是一款神器,搭配 Keil 和 IAR 等編譯軟件使用,可以提高單片機編程的效率。SI 有很多的特性是 keil 和 IAR 不具備的,作為一個代碼編輯軟件來說,很多功能確實很強大。只不過官方久久不更新,所以很多現在主流 IDE 或者代碼編輯器的一些實用功能都不支持。
這次更新,整合了一些新功能,界面也有所改進。之前的版本有的設置界面很小,字都不能完全顯示完,這次更新修復了這些問題。而且,可以很方便的將舊版本的配置文件導出,并導入進新版本,所以慣用的快捷鍵和代碼配色都可以和之前保持一樣,升級后也不需要做過多改動。值得一提的是,這次版本內置了多套主題,盡管都不是那么好看。
以下是一些新特性的展示:
1、文件對比
這個功能在->Tools 中,可以支持當前文件和備份文件對比,也支持兩個文件對比。甚至支持文件夾內容對比。簡單使用后發現效果好不錯,這是替代 UltraCompare 的節奏啊,不過應該不支持文件信息的二進制版本對比。
2、代碼 Reformat
這個功能也在->Tools 中,可以支持幾種常見的代碼風格,例如:ANSI、GNU、K&R,也支持自定義,這和Eclipse 中的一樣。代碼風格是非常個人化的東西,看著舒服就好。這個功能在拷貝粘貼代碼的時候很實用,設置好自己的代碼風格,拷貝代碼后 reformat 一下,大括號縮進什么的就可以輕松搞定。
3、自動補全
自動補全這個功能本來就有,這也是使用 SI 寫代碼比直接在 keil IAR 中寫代碼效率高的一個很重要的原因。但是這次自動補全又增加了新的功能,支持一些關鍵字的自動補全。例如如下的 for 循環,if else 結構。
4、代碼折疊
這個功能在閱讀非常長的代碼時還是很好用的。
還有更多的功能例如主題配色,查找等就不演示了,反正都比 3.5 版本更好了。但是好也不是完全的,在使用新版本是出現過一次程序奔潰,再次打開后當前文件就部分出現了亂碼。
二、修改設置
雖然從 3.5 版本更新到 4.0 可以導入之前的配置文件,很多鍵盤設置和配色方案都可以很好的過渡,但還是有一些東西會有不同,需要重新設置。不過這也是因人而異的,更多的還是風格的問題。以下是我在使用時做的一些設置修改。
1、編碼方式
3.5版本時,默認的編碼方式為系統默認的編碼方式,即 Windows ANSI,4.0版本的默認編碼方式則為 UTF-8,這就導致了在 3.5 版本中可以正常顯示的中文注釋,在 4.0 版本中變成亂碼。修改方式如下:
在 Options->Preferences->Files 中的最下面,Default enconding 從 UTF-8 修改為 ANSI。
2、部分快捷鍵
這些快捷鍵可以從 3.5 導入配置文件導過來,不過如果有些和默認中重復,則需要手動修改下。修改方式如下: 在 Options->Key Assignments 中,根據自己的需要進行修改,我一般會改這幾個地方。
Symbol: Jump To Definition -> Alt+1 //跳轉到定義Navigation: Go Back -> Alt+2 //返回Symbol: Jump To Caller -> Alt+3 //查看調用File: Open -> Alt+Q //打開,其實就是切換下文件,如果已經在標簽頁中,使用 Ctrl+Tab 也行View: Project Window -> Alt+0 //關閉或打開項目文件列表
3、自動補全
自動補全功能是因為在新版本中默認不使用 Tab 鍵補全,只能使用回車鍵,習慣了舊版本可能會有點不適應這一點,不過好在這是可以修改的,在 Options->Typing 中間那欄 Auto Completion 中,勾選 Tab key selects item 即可。
4、TAB鍵寬度
由于 SI 只是用來編寫代碼的,編譯還是在 IDE 中,所以 Tab 鍵的寬度應該和 IDE 中保持一致,這樣在 IDE 中查看代碼的時候格式才不會錯位,我一般習慣的 Tab 鍵寬度為 2 ,4.0 版本默認為4,所以需要做如下修改:Options->File Type Options 右下一欄中的 Tab Width。
5、大括號位置
這還是一個代碼風格的問題,就是大括號的位置是在 if 后面,下面,下面后兩格的問題。我習慣于大括號在正下面,但是 SI 有一個智能縮進,會將大括號自動縮進在下面后兩格。這一個可在 Options->File Type Options 右邊一欄 Auto Indent 中修改,從 Smart 改為 Simple 即可。