source insight分析WRK原始碼

2021-05-24 09:07:00 字數 1456 閱讀 9799

左邊一欄是風格名,選中的是當前游標下的風格名,這些風格之間是有繼承關係的,可以看到有很多=號,這代表繼承了父風格(parent style),pick則是讓你單獨設定,最右邊還可以匯入、匯出、新增風格等。所有風格最終由default text繼承而來的,font name是灰的,它由document options(alt+t)中的當前文件型別

正是這些風格讓source insight五彩繽紛:

還要提一句,source

羅嗦了半天,wrk還沒說呢,關於如何使用請看中文官網的文章

另外條件編譯也是乙個可能讓source insight分析出錯的地方,預設它會分析所有的條件分支。但碰到這樣的情形就糟糕了:

view plain

copy to clipboard

print?

void

myfunc  

#ifdef xyz

(int

param1, 

intparam2)  

#else

(long

param1, 

long

param2)  

#endif

void

dothing(  

intparam1,  

#ifdef abc

intparam2)  

#else

intparam2, param3)  

#endif

很不幸,wrk中也有這樣的問題,這個可以通過新增condition的方法解決。

我在global conditons中新增了;

project-specific conditions新增了:

這樣不符合條件的分支**會不進行解析,用灰色表示。

另外,source

insight還有乙個小bug,用typedef定義函式指標型別時,當函式指標返回型別(也用typedef定義)和函式指標型別定義在同一行時,函式指標返回型別無法解析。如:

view plain

copy to clipboard

print?

typedef

ntstatus (*wmientry)(  

……);//ntstatus無法解析

typedef

ntstatus  

(*wmientry)(  

……);//ntstatus可以解析

還有typedef定義函式指標型別時,函式的引數也都是不染色!這個問題似乎沒有什麼解決方法,用custom parsing也無濟於事。

還有一種情況會讓source insight解析出錯,比如iopfcompleterequest、ntqueryeafile函式,在函式名和{之間有一段多行巨集,這樣source insight就解析的有問題了。這應該是個bug,不知道大家有什麼解決辦法,我迫不得已只好挪動一下巨集的位置!

現在幾乎所有的問題都解決了,**中都染上顏色了吧,呵呵……

Source Insight使用技巧

source insight設定 1 背景色選擇 要改變背景色options preference windows background color設定背景色 2 解決字元等寬對齊問題。sis預設字型是verdana,很漂亮。這網頁上應該也是用的verdana字型。但由於美觀的緣故,verdana字...

sourceinsight建立linux原始碼瀏覽

用source insight建立乙個linux核心 工程具體步驟如下 一 開啟source insight,單擊 專案 按鈕,彈出下拉列表。二 單擊 新專案 按鈕,彈出 新專案 對話方塊,輸入專案名和存放路徑,單擊 確定 按鈕。三 彈出 新增刪除檔案 對話方塊,在核心源 路徑下選擇全部 2.6.2...

source insight使用技巧

工作中最常用的功能 1.在windows的資源管理器中開啟當前檔案 options custom commands add 在彈出的視窗中鍵入自定義的命令名稱如yuebao open explorer 按ok 在run中鍵入shellexecute open explorer e,select,f,...