小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Source Insight設(shè)置

 敗敗0619 2012-07-14

Source Insight設(shè)置  

1、背景色選擇 
    要改變背景色Options->preference->windows background->color設(shè)置背景色

2、解決字符等寬對齊問題。
    SIS默認(rèn)字體是VERDANA,很漂亮。這網(wǎng)頁上應(yīng)該也是用的VERDANA字體。但由于美觀的緣故,VERDANA字體是不等寬的。比如下面兩行
    llllllllll
    MMMMMMMMMM
    同樣10個字符,長度差多了.用VERDANA來看程序,有些本應(yīng)該對齊的就歪了。解放方法是使用等寬的字體,但肯定比較丑。比較推薦的是用Courier New。
3、解決TAB鍵縮進(jìn)問題
    Options-> Document Options里面的右下角Editing Options欄里,把Expand tabs勾起來,然后確定。OK,現(xiàn)在TAB鍵的縮進(jìn)和四個空格的縮進(jìn)在SIS里面看起來就對齊咯

4、SI中的自動對齊設(shè)置:
    在C程序里, 如果遇到行末沒有分號的語句,如IF, WHILE, SWITCH等, 寫到該行末按回車,則新行自動相對上一行縮進(jìn)兩列。
    Option->Document option下的Auto Indient中Auto Indient Type有三種類型 None,Simple,Smart。個人推薦選用Simple類型。
5、向項目中添加文件時,只添加特定類型的文件(文件類型過濾器)
    編輯匯編代碼時,在SIS里建立PROJECT并ADD TREE的時候,根據(jù)默認(rèn)設(shè)置并不會把該TREE里面所有匯編文件都包含進(jìn)來
    只加了.inc和.asm后綴的,.s后綴的沒有。而且用SIS打開.s的文件,一片黑白沒有色彩,感覺回到DOS的EDIT時代了…… 
    解決方法是在Options->Document Options里面,點(diǎn)左上的Document Type下拉菜單,選擇x86 AsmSource File,
    然后在右邊的File filter里*.asm;*.inc;的后面加上*.s;接著CLOSE就可以了。
    上面問題解決了,但注意加入*.s后還需要重新ADD TREE一遍才能把這些匯編加到PROJECT里面。
6、添加文件類型
    用戶可以定義自己的類型,Options->Document Options->add type,定義文件類型名以及文件名后綴。
    勾選include when adding to projects在添加目錄下文件到工程是該類文件就會添加進(jìn)SI的工程。
    如果需要將所有文件添加進(jìn)SI的工程,可以定義一種文件類型*.*。  
7、恢復(fù)ctrl+a的全選功能

    通過關(guān)鍵詞save 找到save all,更改為ctrl+shift+a,通過關(guān)鍵詞select找到select all,更改為ctrl +a


Source Insight中的文件過濾器

遇到在新建工程的時候,需要加入一些除了.c .h 等之外的文件,比如.s,.scf ,Makefile和ReleaseNotes等文件,而每次新建工程的時候,即使取消了shown only known document types,和在點(diǎn)擊Add All之后選擇了Recusively add lower sub-directories ,也還是不能正常識別這類文件,也就不能加入進(jìn)工程,只能我們自己手動雙擊添加到工程中,如果文件少還無所謂,但是包含了很多子文件夾的大工程,這樣實在不可行。

百度了下,終于發(fā)現(xiàn)解決辦法了:

打開Source Insight,在新建工程之前,進(jìn)入

Options -> Document Options... Alt-T    -> 點(diǎn)擊Document Type的下拉框,然后選擇Make File,在右邊的File Filter中,在原先的*.mak后面加上一個分號,即多個不同過濾規(guī)則以分號間隔開,再加上*makefile,變成 *.mak;*makefile,并且選中Include when adding to projects,這樣,以后再新建工程的時候,就可以識別makefile或Makefile了(好像此處Source Insight并不區(qū)分大小寫)。

類似的原理,給其他你想要加入的不同的類型的文件,分別加入到原先的一些文件類型后面,注意要用分號隔開,或者直接新建一個文件類型,然后寫上對應(yīng)的顧慮規(guī)則,比如

點(diǎn)擊 Add Type,填入新文件類型的名字Scatter File,File Filter中寫上*.scf,注意再選中下面的Include when adding to projects,這樣就建立了一個新的文件類型, 以后新建工程加入文件時候,系統(tǒng)就能夠識別后綴是scf的文件了。

當(dāng)然感興趣的,還可以對你新建立的文件類型進(jìn)行一些格式化設(shè)置。包括Parsing,Tab等等設(shè)置。

1 sourceinsight screen font 的默認(rèn)字體是Verdana的,它是一直變寬字體。在Document style中可以將字體改為定寬的Courier

2   勾掉indent Open Brace和Indent Close Brace的效果: 繼上一段,在相對縮進(jìn)行里, 如果輸入"{"或"}", 則自動和上一行列對齊

3 今天把一個用sourceinsight排版整齊的C文件,偶然用VC打開一看,全亂了。研究了半天,發(fā)現(xiàn)SI對每個字符的寬度不太一致。

    發(fā)現(xiàn)選上"view --> draft view", 就可以讓每個字符的寬度一致了??旖萱I是 "Alt + F12"
4選中幾行代碼按tab鍵或者shift+tab可以左右移動代碼,調(diào)整代碼時很有用。

配置成簡單好用的c/java代碼編輯器

1、縮進(jìn)與tab

1Options菜單àPreferencesàTyping卡,勾掉下面兩項∶

Typing tab indents line,regardless of selection,空行按tab無法前進(jìn)

Typing tab replaces current selection,選定部分內(nèi)容、再按tab時會清除所選

2Options菜單àDocument Options(針對不同文件類型,分別進(jìn)行設(shè)置)à下拉左上文件類型框、選擇合適類型(c源文件)àEditing Options框中,tab width=2à Editing Options框中,勾選Expand tabs(這樣,按tab鍵、等價于輸入2個空格)

3Options菜單àDocument Optionsà選擇合適的文件類型à點(diǎn)擊右邊中間的Auto Indentà在彈出的框中,左邊一定要點(diǎn)Smart,右邊有兩個復(fù)選框Indent Open BraceIndent Close Brace,具體效果可以看SISHELP。按照部門里的編程風(fēng)格要求,最方便的就是把兩個復(fù)選框都取消掉,然后點(diǎn)OK

勾選Auto IndentSMART的效果∶在C程序里如果遇到行末沒有分號的語句,IF, WHILE, SWITCH寫到該行末按回車,則新行自動相對上一行縮進(jìn)兩列。

勾掉Indent Open BraceIndent Close Brace的效果∶繼上一段,在相對縮進(jìn)行里如果輸入"}", 則自動和上一行列對齊(好像勾不勾都會有這個功能);而輸入"{"時,不會與下面的行對齊(這是勾上Indent Open Brace時的效果)。

2、向項目中添加文件時,只添加特定類型的文件(文件類型過濾器)

有個同事比較生猛,得整匯編代碼,但在SIS里建立PROJECTADD TREE的時候,根據(jù)默認(rèn)設(shè)置并不會把該TREE里面所有匯編文件都包含進(jìn)來,只加了.inc.asm后綴的,.s后綴的沒有。而且用SIS打開.s的文件,一片黑白沒有色彩,感覺回到DOSEDIT時代了…… 解決方法是在Options->Document Options里面,點(diǎn)左上的Document Type下拉菜單,選擇x86 Asm Source File,然后在右邊的File filter*.asm;*.inc;的后面加上*.s;接著CLOSE就可以了。上面兩個問題解決了,但注意加入*.s后還需要重新ADD TREE一遍才能把這些匯編加到PROJECT里面。

3、去掉功能強(qiáng)大但是無用的自動完成功能

Options菜單àPreferences àTypingàAuto Completion框,勾掉Use automatic symbol completion window(這里是SIS的全局設(shè)置)

Options菜單àDocument OptionsàEditing Options框中,勾掉Allow auto-complete(局部設(shè)置)

上面兩項必須全部勾選,才能啟用Auto Completion功能

4、恢復(fù)小鍵盤的“+-,*/”功能

Options菜單àKey assignments,通過關(guān)鍵詞Scroll 找到Scroll Half Page Up,取消小鍵盤/;通過關(guān)鍵詞Scroll 找到Scroll Half Page Down取消小鍵盤*;通過關(guān)鍵詞Function找到Function Up,取消小鍵盤-,通過關(guān)鍵詞Function找到Function down,取消小鍵盤+。

5、恢復(fù)ctrl+a的全選功能

通過關(guān)鍵詞save 找到save all,更改為ctrl+shift+a,通過關(guān)鍵詞select找到select all, 更改為ctrl +a

6、解決字符等寬對齊問題。

SIS默認(rèn)字體是VERDANA,很漂亮。這網(wǎng)頁上應(yīng)該也是用的VERDANA字體。但由于美觀的緣故,VERDANA字體是不等寬的。比如下面兩行

llllllllll

MMMMMMMMMM

同樣10個字符,長度差多了.VERDANA來看程序,有些本應(yīng)該對齊的就歪了。解放方法是使用等寬的字體,但肯定比較丑??梢杂?/span>DOS字體,也就是記事本里的默認(rèn)字體sysfixed 很丑,要有心理準(zhǔn)備。比較推薦的是用Courier New

SourceInsight提供的功能

1、解析日志信息時非常有用的Source Link

總地說來,SourceLink根據(jù)特定的搜索模式,把當(dāng)前文件中滿足模式的行、鏈接到由該行指定的其他源文件中。

所謂特定的搜索模式,共有兩種“File, then line”和“Line, then file”,其中前后兩部分依靠正則表達(dá)式的組的概念來予以分割。如果當(dāng)前文件具有匹配行,比如“Error d:tcsrcq5.c 18: Lvalue required in function jsSort”,那么SourceInsight在該行創(chuàng)建SourceLink、把該行鏈接到由該行指定的文件中(即d:tcsrcq5.c,第18行)。

1.1 創(chuàng)建SourceLink

運(yùn)行Search菜單的Parse Source Links…命令,在彈出的框中、選擇搜索模式、并填入相應(yīng)的正則表達(dá)式串,點(diǎn)OKSIS就會解析當(dāng)前文件,如果有匹配,就創(chuàng)建SourceLink。

1.2 在解析日志信息時,使用SourceLink

可以打開日志信息,運(yùn)行Parse Source Links命令,日志中能夠匹配模式的每一行(通常是含有錯誤信息的行)、就會被設(shè)置上一個SourceLink

1.3在解析自定義命令輸出時,使用SourceLink

首先勾選Custom Command 中的“Parse Links in Output”,然后選擇特定的搜索模式,最后填入合適的正則表達(dá)式。這樣,Source Insight把輸出信息作為當(dāng)前搜索用文件;并且,如果有匹配行(通常即編譯錯誤信息行),SIS 該行創(chuàng)建SourceLink、并把每一個錯誤信息中給定的文件(和行號)作為link目的地,這對于我們修改源代碼錯誤非常有幫助。

2、替換(Replace VS 上下文敏感的智能重命名(Context-Sensitive Smart Rename

2.1 替換(Replace

目前來說,普通的替換命令、快捷鍵為ctrl+H,足以已滿足工作要求。

在彈出的替換窗口中,在Search框中勾選Selection來只在所選文本區(qū)域中替換(當(dāng)然這時你要先選定區(qū)域然后再按ctrl+H)、勾選WholeFile來在整個當(dāng)前文件內(nèi)替換、兩者都不勾選來從當(dāng)前光標(biāo)處替換至文件末尾;點(diǎn)右邊的Files…按鈕,可選擇替換多個文件的內(nèi)容。

2.2上下文敏感的智能重命名(Context-Sensitive Smart Rename

Smart Rename命令、快捷鍵是Ctrl+’,是上下文敏感的全局搜索替換。它可以智能地重命名全部項目文件中的一個標(biāo)示符。SourceInsight的搜索索引(search index)使得搜索過程進(jìn)行地非???。而且,使用Smart Rename所做的替換會被記錄在Search Results窗口中,每一條替換記錄旁有一個SourceLink鏈接到替換發(fā)生地文件。

Smart Rename可以用來重命名標(biāo)記(symbol)。如果勾選了Smart Reference Matching選項,Smart Rename就只在正確的上下文范圍內(nèi)進(jìn)行重命名。它可以智能地重命名全部項目文件中的一個標(biāo)示符;它可以重命名函數(shù)本地變量,類或結(jié)構(gòu)體成員、函數(shù)。

在彈出的Smart Rename窗口中有下面幾項∶

Old Name 填舊名稱。光標(biāo)下的詞會被自動加載;光標(biāo)的位置非常重要,這是因為Source Insight會根據(jù)本地上下文背景、準(zhǔn)確地確定你想要重命名哪一個標(biāo)記。

推薦只填單個詞、而不是字符串。

如果你在命名成員變量、或本地變量(),Old Name框中會顯示完全標(biāo)記名、即上層容器名+標(biāo)記名。例如,框中的“DocDraw.paintStruc”代表DocDraw是函數(shù)名,paintStruc是函數(shù)的本地成員變量。

New Name 填新名稱。只填標(biāo)記名,不填上層容器名。

Output Search Results 如果勾選,搜索替換結(jié)果日志會被輸出到Search Results窗口中??梢酝ㄟ^Windows菜單來切換,或ctrl+tab切換察看。并且每一條記錄旁會有SourceLink鏈接到替換發(fā)生地文件。

Confirm Each Replacement 每次替換詢問。

Skip Comments 不重名注釋部分。

【使用心得列表】

(1)如何用Smart Rename重命名數(shù)組的數(shù)組名?如果只選取數(shù)組名,會報錯!

(2)如果勾掉Smart Reference Matching,會搜索全部項目文件,并且Old Name框中不顯示完全限定名;如果勾選Smart Reference Matching,無法重命名數(shù)組名,而且鼠標(biāo)位置不正確時會報錯。應(yīng)該如何應(yīng)對?

Source Insight 的實用技巧
2008-10-17 10:48

1 開胃菜-初級應(yīng)用 
1.1 選擇美麗的界面享受工作 
雖 然不能以貌取人,但似乎從來沒有人責(zé)備以貌取軟件的。SI的華麗界面,絕對符合現(xiàn)代花花世界的人的審美趣味。在SI中,我們可以輕松地把各種類型關(guān)鍵字、 變量、標(biāo)志符、函數(shù)、宏、注釋等定義為不同的顏色和顯示方式(正體或斜體、加粗或正常、加下劃線、放大顯示等),總有一種方式能讓我們一眼就能分辨出這個 標(biāo)識是什么。 
1.1.1 字體選擇 
在SI中樣式是 可以被繼承,如果要從根本上改變字體,最簡單的方式就是直接修改根樣式中的字體,因為其它樣式都會由此繼承而來。選擇Options/Document Options頁面內(nèi)的Font Options中的Screen Fonts字體,即可改變根樣式中的字體。SI中的默認(rèn)配置為Verdana字體,是一種非等寬字體 2 ,為了使編寫的代碼在各種編輯器中看起來都有良好的對齊效果,這里強(qiáng)烈建議使用等寬字體,Courier、New Courier和宋體等都是較好的選擇。 
1.1.2 顏色定義 
畢竟這是見仁見智的東西,所以從來沒有統(tǒng)一的標(biāo)準(zhǔn)3。 很多人并不喜歡SI提供的默認(rèn)配置,那么我們就改吧。選擇Options/Style Properties頁面,就可以在其中修改所有樣式了。選擇等號(=)表示繼承Parent Style,也可以選擇Pick(或者ON/OFF等)去配置一個新值。這完全視乎個人喜好。 
1.1.3 標(biāo)識符樣式選擇
 
在與 顏色定義 一節(jié)同樣的界面內(nèi)即可完成此項配置。 
1.1.4 背景色選擇 
在希望要改變背景色的窗口點(diǎn)擊鼠標(biāo)右鍵(假定使用的是右手鼠標(biāo) 4),選擇上下文菜單的 xxx Window Properties項,然后點(diǎn)擊彈出窗口的Back Color按鈕,即可修改該窗口背景色。對于SI的源碼主窗口,只需選擇上下文菜單的Special Window Color項即可完成背景色修改。 
1.2 配置合理的默認(rèn)值高效工作 
1.2.1 使用合理的縮進(jìn) 
我 始終認(rèn)為最容易獲得認(rèn)同的是關(guān)于這個選項的配置了。選擇Options/Document Options頁面,點(diǎn)擊其內(nèi)的Auto Indent按鈕,在彈出的Auto Indenting窗口中,默認(rèn)配置為 Auto Indent Type選擇Smart,且勾選了Smart Indent Options中的兩個可選項,這樣得到的默認(rèn)縮進(jìn)效果為[pre] while (1) 




[/pre]每次都要手工去調(diào)整其縮進(jìn),其實只要把兩個勾選項去掉,就可以得到[pre] while (1) 




[/pre]何樂而不為呢? 
1.2.2 顯示坐標(biāo) 
通 常情況下在窗口狀態(tài)欄左下方,最會顯示當(dāng)前光標(biāo)所在行列信息,但我總覺得不夠明顯,于是通常我們作如下配置: 選擇Options/Document Options頁面,勾選其中的Show line numbers。同時勾選其中的Show right margin,我們就可顯示一條右邊界,隨時提醒我們是否該行代碼寫得過長了。 
1.3 創(chuàng)建便捷的快捷鍵快樂工作 
1.3.1 幾個較常用的快捷鍵 
默認(rèn)情況下,SI已經(jīng)定義了很多非常實用的快捷鍵:

  • F5 
    指定行號,實現(xiàn)行跳轉(zhuǎn),在遇到編譯錯誤的時候,能特別方便的找到出錯行。
  • Shift+F8 
    高亮顯示指定標(biāo)識,快速瀏覽標(biāo)識的使用情況。
  • Ctrl+鼠標(biāo)點(diǎn)擊標(biāo)識 
    直接跳轉(zhuǎn)至標(biāo)識定義處。
  • Ctrl+F 
    本文件內(nèi)查找。
  • F3 
    本文件查找結(jié)果的上一個。
  • F4 
    本文件查找結(jié)果的下一個。
  • F7 
    打開Browse Project Symbols窗口,快速瀏覽工程內(nèi)標(biāo)識定義。
  • Ctrl+M 
    創(chuàng)建或查找書簽,方便下次找回此位置。
1.3.2 自定義快捷健 
選擇Options/Key Assignments,在彈出的Key Assignments窗口中可自由添加自己喜歡的快捷鍵。比較值得推薦的有如下幾個快捷鍵定義:
  • Edit: Drag Line Down 
    光標(biāo)當(dāng)前行下移。
  • Edit: Drag Line Up 
    光標(biāo)當(dāng)前行下移。
  • Edit: Join Lines 
    當(dāng)前行和下一行連接成一行。
1.3.3 更多的快捷鍵 
如果你正好對SI的Marco語言(下文將會介紹)有研究,那么還可以定義更多有用的快捷鍵,比如添加文件頭、函數(shù)頭、注釋等(下文在介紹Marco語言時會介紹如何實現(xiàn))。 
2 小技巧-中級應(yīng)用 
2.1 查找與替換 
在SI中支持多種查找及替換方式,除了上文提到的文件內(nèi)查找外,還支持工程范圍內(nèi)查找、目錄查找、指定多文件查找等等。 
2.1.1 查找 

[list=1]
  • Loopup References 
    我們最常用的一種查找方式是選擇Search/Lookup References或按Ctrl+/組合鍵再或者鼠標(biāo)點(diǎn) R 按鈕,在彈出的Loopup References窗口進(jìn)行查找操作。 在Search Method中有四種可選的查找方式:Simple String、Regular Expression、 Keyword Expression和Look Up Reference。其中Simple String是最普通的查找方式,可以查找文件中出現(xiàn)的任意字符或字符,甚至可以查找 _upap || u 這樣的字符串,但是在工程較大時,查找過程會較慢。 Regular Expression查找方式將在后面講述正則表達(dá)時會介紹到,這里暫時按下不表。 Keyword Expression和Look Up Reference查找的結(jié)果基本相同,但是顯示方式略有差異。這兩種方式都是使用SI預(yù)先建立的數(shù)據(jù)庫,查找起來速度相當(dāng)快。但通常這種速度只對在查找 標(biāo)識符時有明顯效果。對于像函數(shù)名,變量名等的查找,強(qiáng)烈建議使用這兩種方式進(jìn)行查找。
  • Search Files 
    選擇Search/Search Files或按Ctrl+Shift+F組合鍵,在彈出的Search Files窗口進(jìn)行查找操作。 在File Name框中可以填入文件名或文件夾。注意當(dāng)要查詢的文件夾雙包含子文件夾時,可以勾選Options中的Include Subdirectiories,實現(xiàn)對各層文件的遞歸搜索。
  • Search Project 
    選擇Search/Search Project,在彈出的Search Project窗口進(jìn)行查找操作。操作與Loopup References幾乎完全一致,它們各自保存上次搜索的配置。 2.1.2 替換 
    [list=1]
  • 單文件替換 
    選擇Search/Replace或按Ctrl+H組合鍵,在彈出的Replace窗口進(jìn)行查找操作。在 Search項目里勾選Selection則僅對當(dāng)前選中的文檔部分進(jìn)行替換。另外如果勾選了Confirm Replacements則是逐個確認(rèn)替換,否則會同時替換所有符合替換條件內(nèi)容。
  • 多文件替換 
    選擇Search/Replace Files或按Ctrl+Shift+H組合鍵,在彈出的Replace Files 窗口進(jìn)行查找操作。除了增加New框(替換后的內(nèi)容)外,其余均與Search Files窗口相同,可參照查找部分的說明進(jìn)行操作。 2.2 列操作 
    雖然開篇時就說過,SI的列操作功能比較弱,但不等于沒有。先按下Alt鍵,接著就可用鼠標(biāo)進(jìn)行列選擇,然后就可以刪除指定的列。 
    2.3 無名技巧 
    這里介紹一些小技巧,大多數(shù)情況下我們可以無視它們的存在。但如果我們知道這些,某些時候,會有效提高工作效率。 
    • Smart Rename 
      在上下文件菜單中選Smart Rename或按Ctrl+'組合鍵,即可彈出Smart Rename窗口。它有很強(qiáng)大的功能,但最便捷的使用方式是更改函數(shù)內(nèi)局部變量的名字,操作只作用于函數(shù)內(nèi)部,速度非??臁?/li>
    • Renumber 
      使用Ctrl+R將彈出Renumber窗口,這個用于處理數(shù)字順序排列的情況相當(dāng)有效,比如數(shù)組下標(biāo)。例如現(xiàn)有代碼 [pre] array[0] = 1; 
      array[1] = 2; 
      array[2] = 3; 

      [/pre]現(xiàn)在要改為 [pre] array[0] = 0; 
      array[1] = 1; 
      array[2] = 2; 
      array[3] = 3; 

      [/pre]當(dāng)然可以一個個修改,但最快的方式是在array[0] = 1;之前添加array[0] = 0;,然后列選數(shù)組下標(biāo),使用Renumber功能以 0為起始值重填數(shù)值。
    • Edit Condition 
      很多代碼尤其是驅(qū)動代碼,當(dāng)中有大量的預(yù)編譯定義,以實現(xiàn)對不同硬件配置的支持。在閱讀這樣的代碼時最痛苦的是不能簡單判斷程序?qū)嶋H執(zhí)行的代碼分枝。大量分枝同時存在,常常會混淆我們的視聽。比如對于下面的代碼: [pre] #ifdef DEV1 
      /* DEV1代碼代碼 */ 
      #else 
      /* 其它設(shè)備執(zhí)行代碼 */ 
      #endif 

      [/pre]如果確定我們當(dāng)前分析的是DEV1的執(zhí)行情況 5,那么可以選擇上下文件菜單的Edit Condition 選項,在彈出的Conditional Parsing窗口中把DEV1的值設(shè)置為True,那么 #ifdef DEV1就等價于#if 1了,相當(dāng)注釋掉了#else分枝的代碼。反之,設(shè)置為Flase時,則注釋掉#ifdef DEV1分枝的代碼。
    3 學(xué)會偷懶-高級應(yīng)用 
    4 附錄1-SI中正則表達(dá)式 
    由于在查找及替換中,經(jīng)常會使用用正則表達(dá)式6,這里對SI的正則表達(dá)式進(jìn)行簡單介紹。 
    4.1 通配符 
    正則表達(dá)式通配符總表: 
    CharacterMatches
    ^ (在表達(dá)式開始處)行的開始部分
    .任意單個字符
    [abc]任意屬于集合 abc 的單個字符
    [^abc]任意不屬于集合 abc 的單個字符
    *前面字符的0個或多個重復(fù)
    +前面字符的1個或多個重復(fù)
    t一個 tab 字符
    s一個空格符
    w一個空白符(包括 tab 符和空格符)
    $行的結(jié)束部分
    4.2 表達(dá)式中的組 
    在執(zhí)行替換操作時,組將大有用武之地。正則表達(dá)式的各個部分可以用\(\)進(jìn)行分隔,分隔得到的每一項就是一個組。在進(jìn)行替換時可通過組從匹配內(nèi)容中抽取出特定串。在正則表達(dá)式中每個組都有一個編號,自左至右編號從1開始。 例如:abc\(xyx\)將能匹配 abcxyz ,此時組1就包含了 xyz 串。在進(jìn)行替換操作時,就可以通過在替換后內(nèi)容框中填入\1來取出這個字符串。推而廣之,可以使用\<number>來取得組<number>所包含的串。 例如:當(dāng)設(shè)定把\(abc\)\(xyz\)替換為\2\1的替換規(guī)則時,對于 abcxyz 被替換串,則組1包含 abc,組2包含 xyz,而替換后的內(nèi)容定義為組2內(nèi)容后跟組1內(nèi)容(\2\1),因此將得到 xyzabc。 舉個真實的使用例子,相信會增加大家的興趣。有時為方便調(diào)試,代碼中到處流浪著各種形式的mytrace調(diào)用[pre] mytrace("Create parameter list... "); 

    [/pre]有時希望把它們?nèi)孔⑨尩?,而有些時候又希望把它們?nèi)炕謴?fù)回來。這是個簡單的例子,可以使用[pre] ^\(.*\)\(/\*\)\(.*mytrace.*\)\(\*/\)___FCKpd___6nbsp;==> \1\3 

    [/pre]把它們恢復(fù)回來,而使用[pre] ^\(.*\)\(mytrace\)\(.*\)___FCKpd___7nbsp;==> \1/*\2\3*/ 

    [/pre]則完成把它們?nèi)孔⑨尩簟?nbsp;
    5 附錄2-SI中的宏語言 
    我 始終認(rèn)為這是SI中最有趣的部分,這是一種功能強(qiáng)大的編程語言,幾乎可以實現(xiàn)在編程過程可能使用到的各種功能。 這里不準(zhǔn)備對如何實用宏語言進(jìn)行編程作介紹(可參閱SI幫助文檔。),只介紹如何使用已編好程序。為方便使用,我已把這些程序都集中放在utils.em 文件中,下文就此文件進(jìn)行論述。 該宏文件實現(xiàn)了一些在編碼過程中可能會用到的功能, 如添加文件頭、函數(shù)說明(使用時能自動添加文件名、函數(shù)名和當(dāng)前日期)和宏定義,代碼補(bǔ)全等。 使用說明: 
    [list=1]
  • Project/Open Project... 
    打開Base工程(該工程一般在"我的文檔/Source Insight/Projects/Base"中);
  • Project/Add and Remove Project Files... 
    加入宏文件(即utils.em);
  • Options/Menu Assignments 
    打開Menu Assignments窗口,在Command中輸入Macro,選中要使用的宏,添加到合適的菜單中. 推薦使用的宏:InsFileHeader、InsFunHeader、InsHeaderDef、InsIfdef和 AutoExpand (為代碼自動補(bǔ)全功能,建議建快捷鍵)。 關(guān)于AutoExpand的舉例說明, 當(dāng)你輸入了 switch 且光標(biāo)正處于switch后面,運(yùn)行該宏則會得到[pre] switch (###) 

    case 
    break; 
    default: 


    [/pre]對于InsFunHeader宏,如果有如下函數(shù)體[pre] int nOpenConfigFile(char *pchMemConfig, char *pchFlashConfig, 
    int nSize, int nMode) 




    [/pre]光標(biāo)在函數(shù)體內(nèi)時運(yùn)行該宏,那么將會在函數(shù)體上方得到[pre]/****************************************************************************** 
    * nOpenConfigFile - 
    * DESCRIPTION:- 

    * Input: N/A 
    * Output: N/A 
  • ******************************************************************************/ 

    [/pre]其中的函數(shù)名及編寫日期自動按實際情況填充,T357串可通過修改utils.em文件,改成你需要的名字。 
    6 附錄3-推薦格式 
    所謂人各有志,這里就不說啦。 
    7 結(jié)束 
    至此,已將我所知的所有關(guān)于Source Insight(未包括其附帶的Macro語言)知識在此文檔中描述出來。 如有錯漏,請指正
    • 本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
      轉(zhuǎn)藏 分享 獻(xiàn)花(0

      0條評論

      發(fā)表

      請遵守用戶 評論公約

      類似文章 更多