1. 程式人生 > >source insight中的快捷鍵總結

source insight中的快捷鍵總結

1.快捷鍵

1,Shift+F8高亮顯示指定字元。

2,Ctrl+F找出來的結果用F4,F3前進後退查詢。

3,Alt+,後退alt+.前進查詢關鍵字。

4,Alt+G或者F5跳轉到某個固定的行號。

5,Ctrl+M可以自己管理標號,自己可以定義一個編號,可以在一個檔案或者多個檔案間很容易的切換。

6,Ctrl+H是在一個檔案中查詢替換,ctrl+shift+h在多個檔案中查詢替換。

7,在si中可以進行列的選擇,方法是按住alt並左鍵選擇。

8,Ctrl+/是在開啟的所有檔案中查詢某些關鍵字。

9,Ctrl+k是複製一行的快捷鍵

10,我們在用Ctrl+/查詢結果後,進去一個索引後,像要切換到下一個用F10,上一個用F9。

11,Ctrl+i,Ctrl+enter將游標所在的行換到下一行,然後,在此位置上加入新的一行。

12,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為起始值重填數值。

2.一些常用的英文單詞的意思:

commands--關鍵字

3. source insight 的配色方案

剛安裝上的自己配置顏色還是很耗費時間的,我有一個配色方案比較好,

要把這個檔案放置在這個路徑下:C:\Users\Administrator\Documents\Source Insight\Settings

載入這個配置檔案:Options->Load Configuration 彈出的對話方塊選中 All Configuration Setting 然後 Load 選中新的配置

4.巨集語言

我始終認為這是SI中最有趣的部分,這是一種功能強大的程式語言,幾乎可以實現在程式設計過程可能使用到的各種功能。這裡不準備對如何實用巨集語言進行程式設計作介紹(可參閱SI幫助文件。),只介紹如何使用已編好程式。為方便使用,我已把這些程式都集中放在utils.em檔案中,下文就此檔案進行論述。該巨集檔案實現了一些在編碼過程中可能會用到的功能, 如新增檔案頭、函式說明(使用時能自動新增檔名、函式名和當前日期)和巨集定義,程式碼補全等。使用說明:

1. 下載必要檔案:

下載地址設定為  C:\Users\sks\Documents\Source Insight\Projects\Base

2. 開啟source insight,並開啟設定工程檔案:

Project/Open Project

3. 新增下載的檔案到工程中:

然後 close

4. 為這些巨集分配快捷鍵:

從裡邊找到

        Macro: WangQiGuo_AddMacroComment

        Macro: WangQiGuo_CommentSelStr

        Macro: WangQiGuo_MultiLineComment (多行註釋,首先先選中多行,然後按他的快捷鍵)

並設定快捷鍵分別是

        Ctrl + 3

        Ctrl + 8

        Alt + 1

另外為了以防萬一,檢視下下邊的快捷鍵分配是不是設定了:

Macro: AutoExpand     -->     Alt + Enter  (程式碼自動補全功能)

Macro: ToExplorerFolder     -->     Ctrl + T (開啟本檔案所在的資料夾)

關於AutoExpand的舉例說明, 當你輸入了 switch 且游標正處於switch後面,執行該巨集則會得到

switch ( # )
{
    case # :
        #
        break;
    case # :
        #
        break;
    default:
        #
}

對於InsFunHeader巨集,如果有如下函式體,(此處說的是後邊的 fu 自動補全的執行結果)

    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.
 * --------------------
 ******************************************************************************/

其中的函式名及編寫日期自動按實際情況填充,T357串可通過修改utils.em檔案,改成你需要的名字。

修改後的快捷鍵就如下:

Alt+1,是多行一起註釋的快捷鍵,再按一次是取消多行註釋

Ctrl+3,是為內容新增#if 0...#endif,之所以這樣是因為3的上的#

Ctrl+8,是為內容新增/**/,之所以這樣是因為8的上的*

Ctrl+t,開啟正在顯示的檔案所在的資料夾,並且是選中的狀態

1.新增檔案頭註釋:
命令:fi  解釋:file

2.新增函式說明註釋:
命令:fu  解釋: function

3.新增單行註釋:
命令:as  解釋: add start       (新增之後:/* add by zhangsan, 20140504, Mantis號:d, 原因: */ )
命令:ms  解釋: modify start    (新增之後:/* modify by zhangsan, 20140504, Mantis號:d, 原因: */ )
命令:ds  解釋: delete start    (新增之後:/* delete by zhangsan, 20140504, Mantis號:d, 原因: */ )

4.新增標記註釋:
命令:ab  解釋: add begin       (新增之後:/* add begin by zhangsan, 20140504, Mantis號:d 原因: */)
命令:ae  解釋: add end         (新增之後:/* add end by zhangsan, 20140504 */)

命令:mb  解釋: modify begin    (新增之後:/* modify begin by zhangsan, 20140504, Mantis號:d 原因: */)
命令:me  解釋: modify end      (新增之後:/* modify end by zhangsan, 20140504 */)

命令:db  解釋: delete begin    (新增之後:/* delete begin by zhangsan, 20140504, Mantis號:d 原因: */)
命令:de  解釋: delete end      (新增之後:/* delete end by zhangsan, 20140504 */)

5.配置命令:

命令:co  解釋:config (修改相關配置資訊)

要更改名字什麼的用它。

這裡的版權說明只能自己手工修改程式碼,開啟quicker.em檔案,查詢字串 Copyright 更改兩處,一個是中文的版權資訊,一個是英文的版權資訊。

詳細的語句塊自動補全功能說明:

1.


該命令自動生成C語言的註釋,它能自動換行對齊,在把文件中一長串註釋拷貝過來時特別管用,不用自己去對齊了。還能自動識別中文和英文單詞,對於中文不會把一個字分開,對於英文單詞分開時會自動新增連字元,下面是一個註釋的例子abcdefghijk = abcd + cdefg +hijk     

1.2   自動生成   }

1.3  while  (wh)自動生成While語句

while (#)
{
#
}

1.4 if   自動生成if語句

if 生成if結構的語句
ife  對應生成if else結構的語句
ifs 對應生成if elseif else結構的f語句

if ( # )
{
#
}


1.5  for  自動生成for語句,支援塊命令插入

該命令自動生成如下格式

for ( #; #; # )
{
#
}


1.5.1 fo   自動生成for語句與前一條命令相比它直接會定義迴圈變數
UINT32 ulI = 0;
for ( ulI = 0;  ulI <#;  ulI++ )
{
#
}

1.6  do  自動生成 do while語句

該命令自動生成如下格式

do
{
#
} while ( # );

1.7  #ifd  自動生成 #ifdef 命令

該命令生成如下格式  

#ifdef UMSC
#endif

1.8  #ifn  自動生成 #ifndef 命令

該命令生成如下格式

#ifndef UMSC
#endif

1.9 #if  自動生成#if  命令

該命令生成如下格式

#if  ( UMSC == 1)
#endif

1.10 cpp 自動生成適用於c++的c原型說明定義

該命令生成如下格式

#ifdef __cplusplus
#if __cplusplus
extern "C"{
#endif
#endif


#ifdef __cplusplus
#if __cplusplus
}
#endif
#endif


1.11  switch (sw) 自動生成switch語句

該命令將提示輸入case的個數,生成如下格式

switch ( # )
{
case #:
#
break;
default:
#
}


1.12  case (ca)自動生成case語句

支援塊命令輸入
該命令生成如下格式,用它可以避免遺漏break

case #:
#
break;


1.13  struct (st) 自動生成結構型別

該命令自動生成如下結構定義,它提示輸入結構名,會自動轉換成大寫形式,並且自動在其後新增_STRU作為結構型別

typedef struct HELLO_TEST
{
#            
}HELLO_TEST_STRU;


1.14  enum (en) 自動生成列舉型別

該命令自動生成如下結構定義,它提示輸入結構名,會自動轉換成大寫形式,並且自動在其後新增_STRU作為結構型別

typedef enum HELLO_TEST
{
#          
}HELLO_TEST_ENUM;


參考部落格http://www.cnblogs.com/wangqiguo/p/3713211.html

5.特殊情況的解決辦法

5.1 快捷鍵Alt+W在有的計算機上不能使用,以至於我們的快捷切換視窗不能使用。

一般這個問題的出現是因為你開著qq呢,qq的語音輸入快捷鍵就是Alt+W,去掉就可以了:

5.2 source insight 中儲存時自動去除每行尾部的空格和tab的實現方法:

Options->Perferences->Files-> Remove extra white space when saving。

5.3 開啟檔案時亂碼:

        當開啟一個檔案時,中文註釋亂碼,如論如何設定source insight都不能解決,那你需要考慮考慮是不是檔案本身的問題了,source insight處理的是文件格式中不能很好的處理utf-8的格式,因此如果是這個格式的檔案就需要更改一下文件了,具體的方法也很簡單,只要用notepad++開啟要修改的文件,然後 (編碼->轉為ANSI編碼格式),一張截圖如下: