Source Insight 實質上是一個支持多種開發(fā)語言(java,c ,c++等等)的編輯器,只不過由于其查找、定位、彩色顯示等功能的強大,而被我們當成源代碼閱讀工具使用 。所以,為了有效的閱讀源程序,首先必須選擇功能菜單上的“Project”選項的子菜單“New Project” 新建一個項目,項目名稱可以自由選定,當然也可以選擇刪除(Remove)一個項目。當刪除一個項目的時候,并不刪除原有的源代碼文件,只是將該軟件生成的那些工程輔助文件刪除。設定之后,將會彈出一個對話框如圖2,接受默認選擇,如果,硬盤空間足夠,可以將第一個復選框選上,該選項將會需要與源代碼大致同等的空間來建立一個本地數(shù)據(jù)庫以加快查找的速度。
解決Win7&Win8 64位下Source Insight提示未完整安裝的問題
網(wǎng)上的破解版的注冊表文件都是針對32位系統(tǒng)的,所以在64位系統(tǒng)里運行根本無法破解。下面分別貼出這倆系統(tǒng)里的破解文件。
使用方法:
分別復制對應系統(tǒng)的內容,新建文本文檔,將內容粘貼進去,重命名為.reg文件,雙擊運行,彈出提示窗口,點擊“確定”,整個世界都清凈了。
Win7&Win8 64bit:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Source Dynamics\Source Insight\3.0]
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Source Dynamics\Source Insight\3.0\Install]
"SetupAdminOK"="1"
"SerialNumber"="SI3US-802287-90702"
"UName"=hex:76,6e,03
"UNameData"=hex:00,00,61,61
"UOrg"=hex:76,6e,03
"UOrgData"=hex:00,00,61,61
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Source Dynamics\Source Insight\3.0\Paths]
"CmdShell"="C:\\Windows\\system32\\cmd.exe"
"InitDir"="D:\\SourceInsight"
"BackupDir"="D:\\SourceInsight\\Backup"
WinXP 32 bit:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Source Dynamics\Source Insight\3.0\Install]
"SetupAdminOK"="1"
"SerialNumber"="SI3US-802287-90702"
"UName"=hex:7a,7a,79,62,7b,66,6d,6c,17
"UNameData"=hex:00,00,67,6e
"UOrg"=hex:60,66,6d,71,7f,6a,6d,6c,31,6c,71,78,7c,76,03
"UOrgData"=hex:00,00,79,6b
source insight 教程
si的主要配置都在Options->Perferences菜單里,
1、General
Project File Synchronization->Remove missing file from project選上可以避免因文件找不到而彈出錯誤對話框。
把Misc->Use stricter confirmation dialog選項去掉可以使確認時不輸入"yes"。
2、Typing
Source Editing->Indent commands affect #-preprocessor statements。去掉后(默認值),進行多行縮進時不會影響預處理語句(如#if...#endif)。
Auto Completion->Use detailed completion window,選上后,聯(lián)想時可以出現(xiàn)該函數(shù)的詳細信息。見下圖:
Auto Completion->Insert paremeters for functions,去掉后,自動聯(lián)想不會把整個參數(shù)都輸出到當前行。
Browsing in Lists->Match syllables while typing(slower)。在symbol list框檢索符號時是否采用音節(jié)匹配方式,如對于函數(shù)FindNext,輸入find或者next都可以找到該函數(shù)。該功能可能導致反應緩慢(視工程和機器配置而定),建議關閉,因為即使在關閉狀態(tài)下也可以通過先輸入空格再輸入單詞來動態(tài)啟用該功能。
注意Browsing in Lists里其實有兩個功能,但一般我們只能看到Match syllables while typing這一條,應該是si的菜單設計沒有做好,導致在中文windows下不能顯示全,另一個功能是Match members while typing,用于打開/關閉按成員變量名來檢索類/結構體的功能。
3、Files
Opening Files->Sharing: Let other programs modify files,以共享方式打開文件,這個很重要,保證可以在其它編輯中同時編輯該文件。典型的場景就是用ide環(huán)境去動態(tài)編譯調試,而用si靜態(tài)閱讀。
Customize 'Open' Command...,用于設置Ctrl+O打開的頁面,默認選項是 Project File list view in Project Window,建議保持默認。
Saving Files->Preserve Undo data and revision marks after saving,如果發(fā)現(xiàn)保存后就不能undo了,請檢查該選項是否選中。
Remove extra white space when saving。保存時自動去除每行尾部的空格和tab。建議選中。
4、Languages
自定義其它編程語言的語法解析,這個...還是另寫一篇來講吧。
Conditional Parsing不要錯過了,這里的Conditions功能實在讓人喜歡。Conditions是什么意思呢?我們的代碼中一般都會有一些開關宏,通過在Conditions中配置這些宏的默認值,可以讓si把配置為不開啟的宏視為無效代碼,從而不進行符號檢索。
如果源代碼中的開關宏太多,還可以使用Condition Parsing中的Scan Files來自動找出所有開關宏。
5、Symbol Lookups
沒太多特別的。
6、Display
顯示配置和個人喜好和顯示器的狀態(tài)有關,偶用的x60小本,屏幕資源有限,所以在Display Elements里把Project Window, Status Bar, Tool Bar,Clip Window都關了,基本用快捷鍵可以代替它們。
Options->Horizontal scroll bars for each new window。很多大師都教導我們說一行不要寫太多代碼。在這個指導思想下,我們不需要這個東東。
Show exact case of file names。如果看不慣si把所有的文件名首字母都大寫就勾上這個選項吧。
Tile source and destination windows for Source Link commands。Source Link很多時候用于外部命令輸出結果的解析(如Make, lint),這個功能會把解析結果與目標窗口自動tile,很實用。
Trim long path names with ellipses。這個建議不要選中。事實上這個主要影響標題欄,但一般來說標題欄上的空間是充裕的,選上之后往往會令我們不知道所編輯文件的具體位置。
7、Color
這個不用多說了。自己怎么喜歡怎么配吧。
8、Syntax Formatting
如果讓大家說出喜歡si的幾個理由,我想語法著色一定會是其中之一。
Basics->Use only color formatting。只啟用style中關于顏色的設置。其它如粗體、斜體、陰影等都不啟用。
Apply Styles for Lanugage Elements。把分類啟用style,都選上吧。
Symbol Reference Lookups->Qualify references to members。檢測成員的有效性,如果不是類/結構體中的一部分,則不啟用style。雖然可能導致性能降低,但還是建議打開。同樣Qualify references to functions也是。
這里有個按鈕可以進入Doc Types頁面(Options菜單也可以進入),里面有很多重要選項:
Editing Options中,
Expand tabs, Visible tabs可以幫助我們發(fā)現(xiàn)并轉換tab。
Show right margint和Margin width可以提醒我們是否把一行寫得太長。
Symbol Window選項建議關閉(因為有快捷鍵)。
Auto Indent對話框中,
如果沒有特別喜好,建議把Smart Indent Options的兩個勾都去掉。同時Auto Indent Type選Smart。
9、Syntax Decorations
可以把一些符號轉換成特殊形式顯示,如->轉換成→。如果要使用該功能,不能開啟Syntax Formatting->Basics->Use only color formatting。
Auto annotations下的三個功能都比較有用,
Show arrows at goto statements可以在goto時顯示一個向上或向下的箭頭,表示是向上goto還是向下goto。不過我們還是盡量不要用goto了。
Annotate closing braces with end-statement。在"}"后顯示標識,表示該"}"與哪個if/switch配對。而下面的Annotate closing braces only for long blocks則是一個補充選項,表示只在較長的語句塊時才顯示標識。
10、Searching
沒什么特別的,注意Automatically load selection into Find pattern。
11、Remote
與遠程登錄相關的一些選項。可以提高遠程使用的顯示性能。
12、Folders
沒什么特別的。
最后簡單說下si的配置文件。可以通過Options->Load Configuration/Save Configuration來導入/導出配置,可以導出全部,也可以導出某幾個部分(如style)。si的配置有兩級,一是全局配置,一是項目配置。出入方便考慮,統(tǒng)一一個配置就好了,在創(chuàng)建項目時選擇用全局配置(默認值)。
導入配置也可以通過雙擊配置文件來完成。