Source Insight 3.5 User Manual
原廠手冊連結:Source Insight 3.5 User Manual
=================================================================
Source Insight 使用教學
連結:http://rtlab.cs.nthu.edu.tw/course/cs5423/2011_Spring/Source_Insight_Introduction_2011.pdf
========================================================================
Source Insight 快速註解 及 設定
增加快速註解Macro
Project/Open Project…
打開Base Project(“我的文件/Source Insight/Projects/Base”中);
Project/Add and Remove Project Files…
加入Macro文件(即utils.em);
Options/Menu Assignments
打開Menu Assignments視窗,在Command中輸入Macro,選中要使用的Macro,添加到合適的選單中.
推薦使用的Macro:Comment、InsFileHeader、InsFunHeader、InsHeaderDef、InsIfdef和AutoExpand (為代碼自動補全功能,建議建快捷鍵)。
http://www.sourceinsight.com/public/macros/
http://www.sourceinsight.com/public/macros/comment.em
===================================================
按小鍵盤的/*-+螢幕都會亂跳
options->Key Assignments, 裡面在command鍵入
Navigation: Scroll Half Page Down
Navigation: Scroll Half Page Up
Navigation: Function Down
Navigation: Function Up
就可以修改keystrokes.(想改其他的都可以在裡面找)
可以順便看一看有沒有什麼是你需要的功能.
===================================================
添加特定類型的文件(文件類型過濾器)
在Options->Document Options裡面,點左上的Document Type下拉選單,選擇x86 Asm Source File,然後在右邊的File filter裡*.asm;*.inc;的後面加上*.s;接著CLOSE就可以了
===================================================
限定column寬度
options->Document options, 將Margin width 設成你希望的最大寬度,他會在螢幕上劃一條灰線,那行就是你的設定寬度,如此ㄧ來在影印的時候才不會亂掉.
===================================================
對齊的問題
a. 可以直接選擇 View->Draft View 那保證對齊,
b. 要不然就是options->Document options裡面的”Screen Fonts”按鈕, 選擇Courier New字型.(利用寬字元的方式)
===================================================
while(), if….等等enter後對齊問題
選擇Options/Document Options頁面,點擊其內的Auto Indent按鈕,在彈出的Auto Indenting窗口中,默認配置為Auto Indent Type選擇Smart,且勾選了Smart Indent Options中的兩個可選項
===================================================
自定義快捷鍵
選擇Options/Key Assignments,在彈出的Key Assignments窗口中可自由添加自己喜歡的快捷鍵。 比較值得推薦的有如下幾個快捷鍵定義:
===================================================
Renumber
使用Ctrl+R將彈出Renumber窗口,這個用於處理數字順序排列的情況相當有效,比如數組下標。 例如現有代碼
array[0] = 1;
array[1] = 2;
array[2] = 3;
現在要改為
array[0] = 0;
array[1] = 1;
array[2] = 2;
array[3] = 3;
當然可以一個個修改,但最快的方式是在array[0] = 1;之前添加array[0] = 0; ,然後列選數組下標,使用Renumber功能以0為起始值重填數值。
Edit Condition
很多代碼尤其是驅動代碼,當中有大量的預編譯定義,以實現對不同硬件配置的支持。 在閱讀這樣的代碼時最痛苦的是不能簡單判斷程序實際執行的代碼分枝。 大量分枝同時存在,常常會混淆我們的視聽。 比如對於下面的代碼:
#ifdef DEV1
/* DEV1代碼代碼*/
#else
/*其它設備執行代碼*/
#endif
如果確定我們當前分析的是DEV1的執行情況5 ,那麼可以選擇上下文件菜單的Edit Condition選項,在彈出的Conditional Parsing窗口中把DEV1的值設置為True,那麼#ifdef DEV1就等價於# if 1了,相當註釋掉了#else分枝的代碼。 反之,設置為Flase時,則註釋掉#ifdef DEV1分枝的代碼。
========================================================================
出處:http://huenlil.pixnet.net/blog/post/23271746-source-insight-%E6%95%99%E5%AD%B8%E6%94%B6%E9%9B%86
先進入options->Document options
a. 先打勾Expand tabs
b. 裡面的editing options群組有 Tab width
添加特定類型的文件(文件類型過濾器)
options->Document options, 將Margin width 設成你希望的最大寬度,他會在螢幕上劃一條灰線,那行就是你的設定寬度,如此ㄧ來在影印的時候才不會亂掉.
if,for,while的{}對齊方式
options->Document options 裡面的 “Auto Indent…”按鈕, 將裡面 Indent Open Brace,Indent Close Brace取消.
按小鍵盤的/*-+螢幕都會亂跳
options->Key Assignments, 裡面在command鍵入
Navigation: Scroll Half Page Down
Navigation: Scroll Half Page Up
Navigation: Function Down
Navigation: Function Up
就可以修改keystrokes.(想改其他的都可以在裡面找)
可以順便看一看有沒有什麼是你需要的功能.
對齊的問題
a. 可以直接選擇 View->Draft View 那保證對齊,
b. 要不然就是options->Document options裡面的”Screen Fonts”按鈕, 選擇Courier New字型.(利用寬字元的方式)
F1 copy
F2 bookmark
F3 search Forward
s-F3 find prev
F4 prev link
F5 next link
s-F5 jump to link (在 source code / search result 之間切換)
F6 highlight word
c-s-F6 clear all lighlight word
F7 compiler the file
c-F7 project make
F8 (prev relation)
a-F8 Context window (on off)
F9 (next relation) Activate relation window
a-F9 relation window (on off)
F10 Last Window
a-F10 zoom window
F11 select word
s-F11 comment (但須加入 comment.em 於 base.pr)
F12 Activate Window Menu
s-F12 un-comment (但須加入 comment.em 於 base.pr)
Search: Search… : Ctrl+F
Search: Search Forward : F3
Search: Search Backward : Shift+F3
Navigation: Go To Previous Link : F4
Navigation: Go To Next Link : F5
Navigation: Function Down : Alt+PgDn (goto next func)
Navigation: Function Up : Alt+PgUp (goto prev func)
Navigation: Go Forward : Alt+., Thumb 2 Click
Navigation: Go Back : Alt+,, Thumb 1 Click
Navigation: Go Back Toggle : Alt+M
Navigation: Activate Relation Window : F9
View: Relation Window : Alt+F9
Macro: myRelWnd : Ctrl+/, Ctrl+
Symbol: Browse Local File Symbols… : Alt+J
Symbol: Browse Project Symbols… : Alt+K
( Navigation: Activate Symbol Window = browse only displayed local symbol )
View: Context Window : Alt+F8
Navigation: Activate Clip Window : Alt+D
Symbol: Lookup References… : Alt+R (配合 F4/F5/Alt+;)
Symbol: Jump To Definition : Alt+=, Ctrl+Double L Click
Symbol: Jump To Prototype… : Alt+-
Symbol: Symbol Info… : Alt+I, Ctrl+R Click (select)
Navigation: Jump To Match : Alt+]
Navigation: Select Match : Alt+Shift+}
Navigation: Make Column Selection : Alt + mouse L Click
Edit: Copy Line : Alt+L, Alt+F11, Ctrl+Shift+Up
—————– Font/Color
. 某些字型粗體字(如highlight時)會比非粗體字更寬(變成不是所有字等寬) , 以下任一解法皆可 :
1. 非粗體字font size=10, 粗體字時選用 font size=9
2. 將粗體字 scale 設為 90%
. 字集選 “西歐” 則 cursor 可穿入中文字
選 “BIG5” 則不可穿入中文字 (但仍須移兩次 cursor, 修改時反而造成困擾)
. 以下所列字形均為 每個字元皆同寬度
—– normal view of ” :
細明體 (font size 10 in 1024*768) — 小寬度,(大高度),粗體字寬度加大
Courier New (font size 10 in 1024*768) — 大寬度,(小高度),粗體字寬度不變
Courier
NSimSun
SimSun
—– good but ” :
MS Mincho
BatangChe
MS Gothic
GulimChe
DotumChe
—– extern font (normal ”) :
http://www.lowing.org/fonts/
—–
# new language (ex: My txt)
. 勿勾選 “Use Syntax Formatting”, 否則某些中文字會變亂碼
. 欲讓某些字有顏色, 可加入keyword (‘.’, ‘#’ 等亦可)
亦可加入 Custom Parsing, ex: ([w]*. )
—————– Associate File
如何在檔案總管 .h .cpp 按 Enter 即以 source insight 開啟該檔 :
C:Program FilesSource Insight 3insight3.exe -i “%1”
但按 Enter 在 insight 中該檔路徑為 xxx~1, 用拖拉的才顯示完整路徑
—————–
New: You can force Source Insight to use a folder other than “My DocumentsSource Insight”
as your user data folder. Add the following registry string value:
HKEY_CURRENT_USERSoftwareSource DynamicsSource Insight3.0PathsUserDataDir
Set the string value to the path of the folder you want to use.
The folder must already exist and you must have file write and create permissions in that folder.
========================================================================
Source Insight 方便 coding 的設定
出處:http://www.wretch.cc/blog/freekyidea/9902949
分享在我的Facebook分享在我的Plurk分享在我的即時通 發文
個人使用SourceInsight也一段時間了,最喜歡的就是它搜尋的功能,可以方便讓你tracking整支程式,
但是最讓人詬病的地方,就是每當sourceInsight編輯完,若使用UltraEdit開啟,一定程式碼對齊的亂七八糟~
若公司有要求coding style,那也許還會有更多的麻煩地方.
以上也許可以利用幾個方法來修正這些問題~
1. 將tabr鍵改為多格空白
先進入options->Document options
a. 先打勾Expand tabs
b. 裡面的editing options群組有 Tab width
利用這個可以更改tab為多格空白
2. 限定column寬度
options->Document options
將Margin width 設成你希望的最大寬度,他會在螢幕上劃一條
灰線,那行就是你的設定寬度,如此ㄧ來在影印的時候才不會亂
掉.
3. 如果你嫌if,for,while這類的{}對齊方式不合乎你的意思
你可以點選
options->Document options 裡面的 “Auto Indent…”按鈕
將裡面 Indent Open Brace,Indent Close Brace取消.(試試看吧~)
4. 按小鍵盤的/*-+螢幕都會亂跳
options->Key Assignments…
裡面在command鍵入
Navigation: Scroll Half Page Down
Navigation: Scroll Half Page Up
Navigation: Function Down
Navigation: Function Up
就可以修改keystrokes.(想改其他的都可以在裡面找)
可以順便看一看有沒有什麼是你需要的功能.
(sourceInsight提供了ㄧ堆)
5. 對齊的問題
a. 可以直接選擇 View->Draft View 那保證對齊,
b. 要不然就是options->Document options裡面的”Screen Fonts”按鈕
選擇Courier New字型.(利用寬字元的方式)
##希望對大家有用
這是我的reference 供大家延伸閱讀~
http://atu82.bokee.com/6398141.html
=======================================================================
Source Insight v.s SlickEdit® 2007
SourceInsight 的實用技巧
出處:http://blog.xuite.net/yang44/dd/49129041-SourceInsight+%E7%9A%84%E5%AF%A6%E7%94%A8%E6%8A%80%E5%B7%A7
[原創文章,轉載請保持文章 完整,並註明出處。更多精彩文章請訪問http://blog.csdn.net/Jupin 或者http://hi.baidu.com/qiupingwu ]
1 開胃菜-初級應用
1.1 選擇美麗的界面享受工作
1.1.1 字體選擇
1.1.2 顏色定義
1.1.3 標識符樣式選擇
1.1.4 背景色選擇
1.2 配置合理的默認值高效工作
1.2.1 使用合理的縮進
while (1) { I }
while (1) { I }
1.2.2 顯示坐標
1.3 創建便捷的快捷鍵快樂工作
1.3.1 幾個較常用的快捷鍵
- F5
指定行號,實現行跳轉,在遇到編譯錯誤的時候,能特別方便的找到出錯行。 - Shift+F8
高亮顯示指定標識,快速瀏覽標識的使用情況。 - Ctrl+鼠標點擊標識
直接跳轉至標識定義處。 - Ctrl+F
本文件內查找。 - F3
本文件查找結果的上一個。 - F4
本文件查找結果的下一個。 - F7
打開Browse Project Symbols窗口,快速瀏覽工程內標識定義。 - Ctrl+M
創建或查找書籤,方便下次找回此位置。
1.3.2 自定義快捷健
- Edit: Drag Line Down
光標當前行下移。 - Edit: Drag Line Up
光標當前行下移。 - Edit: Join Lines
當前行和下一行連接成一行。
1.3.3 更多的快捷鍵
2 小技巧-中級應用
2.1 查找與替換
2.1.1 查找
- Loopup References
我們最常用的一種查找方式是選擇Search/Lookup References或按Ctrl+/組合鍵再或者鼠標點 R 按鈕,在彈出的Loopup References窗口進行查找操作。在Search Method中有四種可選的查找方式:Simple String、Regular Expression、 Keyword Expression和Look Up Reference。其中Simple String是最普通的查找方式,可以查找文件中出現的任意字符或字符,甚至可以查找 _upap || u 這樣的字符串,但是在工程較大時,查找過程會較慢。
Regular Expression查找方式將在後面講述正則表達時會介紹到,這裡暫時按下不表。
Keyword Expression和Look Up Reference查找的結果基本相同,但是顯示方式略有差異。這兩種方式都是使用SI預先建立的數據庫,查找起來速度相當快。但通常這種速度只對在查找標識符時有明顯效果。對於像函數名,變量名等的查找,強烈建議使用這兩種方式進行查找。
- Search Files
選擇Search/Search Files或按Ctrl+Shift+F組合鍵,在彈出的Search Files窗口進行查找操作。在File Name框中可以填入文件名或文件夾。注意當要查詢的文件夾雙包含子文件夾時,可以勾選Options中的Include Subdirectiories,實現對各層文件的遞歸搜索。
- Search Project
選擇Search/Search Project,在彈出的Search Project窗口進行查找操作。操作與Loopup References幾乎完全一致,它們各自保存上次搜索的配置。
2.1.2 替換
- 單文件替換
選擇Search/Replace或按Ctrl+H組合鍵,在彈出的Replace窗口進行查找操作。在Search項目裡勾選Selection則僅對當前選中的文檔部分進行替換。另外如果勾選了Confirm Replacements則是逐個確認替換,否則會同時替換所有符合替換條件內容。 - 多文件替換
選擇Search/Replace Files或按Ctrl+Shift+H組合鍵,在彈出的Replace Files窗口進行查找操作。除了 增加New框(替換後的內容)外,其餘均與Search Files窗口相同,可參照查找部分的說明進行操作。
2.2 列操作
2.3 無名技巧
- Smart Rename
在上下文件菜單中選Smart Rename或按Ctrl+’組合鍵,即可彈出Smart Rename窗口。它有很強大的功能,但最便捷的使用方式是更改函數內局部變量的名字,操作只作用於函數內部,速度非常快。 - Renumber
使用Ctrl+R將彈出Renumber窗口,這個用於處理數字順序排列的情況相當有效,比如數組下標。例如現有代碼array[0] = 1; array[1] = 2; array[2] = 3;
現在要改為
array[0] = 0; array[1] = 1; array[2] = 2; array[3] = 3;
當然可以一個個修改,但最快的方式是在array[0] = 1;之前添加array[0] = 0;,然後列選數組下標,使用Renumber功能以0為起始值重填數值。
- Edit Condition
很多代碼尤其是驅動代碼,當中有大量的預 編譯定義,以實現對不同硬件配置的支持。在閱讀這樣的代碼時最痛苦的是不能簡單判斷程序實際執行的代碼分枝。大量分枝同時存在,常常會混淆我們的視聽。比如對於下面的代碼:#ifdef DEV1 /* DEV1代碼代碼*/ #else /*其它設備執行代碼*/ #endif
如果確定我們當前分析的是DEV1的執行情況5,那麼可以選擇上下文件菜單的Edit Condition選項,在彈出的Conditional Parsing窗口中把DEV1的值設置為True,那麼 #ifdef DEV1就等價於#if 1了,相當註釋掉了#else分枝的代碼。反之,設置為Flase時,則註釋掉#ifdef DEV1分枝的代碼。
3 學會偷懶-高級應用
4 附錄1-SI中正則表達式
4.1 通配符
正則表達式通配符總表:
Character | Matches |
^ (在表達式開始處) | 行的開始部分 |
. | 任意單個字符 |
[abc] | 任意屬於集合 abc 的單個字符 |
[^abc] | 任意不屬於集合 abc 的單個字符 |
* | 前面字符的0個或多個重複 |
+ | 前面字符的1個或多個重複 |
/t | 一個 tab 字符 |
/s | 一個空格符 |
/w | 一個空白符(包括 tab 符和空格符) |
$ | 行的結束部分 |
4.2 表達式中的組
mytrace("Create parameter list... ");
^/(.*/)/(//*/)/(.*mytrace.*/)/(/*//)___FCKpd___6nbsp;==> /1/3
^/(.*/)/(mytrace/)/(.*/)___FCKpd___7nbsp;==> /1/*/2/3*/
5 附錄2-SI中的宏語言
- Project/Open Project…
打開Base工程(該工程一般在”我的文檔/Source Insight/Projects/Base”中); - Project/Add and Remove Project Files…
加入宏文件(即utils.em); - Options/Menu Assignments
打開Menu Assignments窗口,在Command中輸入Macro,選中要使用的宏,添加到合適的菜單中.
switch (###) { case break; default: }
int nOpenConfigFile(char *pchMemConfig, char *pchFlashConfig, int nSize, int nMode) { I }
/************************************************* ***************************** * nOpenConfigFile - * DESCRIPTION:- * * Input: N/A * Output: N/A * Returns: N/A * * modification history * -------------------- * 1.00, Apr 19, 2007, T357 written. * -------- ------------ ************************************** ****************************************/
SourceInsight
Source Insight 教學收集
http://huenlil.pixnet.net/blog/post/23271746
Source Insight – Trace Code的神兵利器
http://www.wretch.cc/blog/hidex/8117748
sourceinsight使用技巧
http://blog.csdn.net/flyyanqu/archive/2008/03/27/2222799.aspx
SourceInsight的实用技巧
http://blog.csdn.net/jupin/archive/2007/10/19/1832536.aspx
Source Insight3.0: Linux源代码阅读的利器, http://www.itepub.net/html/kaifawendang/caozuoxitong/Linux/ruanjianshiyong/2006/0501/14338.html
Source Insight常用设置及使用技巧
http://www.dz3w.com/tools/others/3677.html
source insight快捷键及使用技巧
http://lucjn.blog.163.com/blog/static/92591152009111684354800/