source insight 4.0 常用快捷鍵(提高編程效率)

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,不能使用,更改options->key assignment 中的Edit: Insert Line Before Next 的快捷鍵,我的更改成了ctrl+o。

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 的配色方案


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

從這裏下載:http://download.csdn.net/download/qqliyunpeng/8799431

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

加載這個配置文件:Options->Load Configuration 彈出的對話框選中 All Configuration Setting 然後 Load 選中新的配置

 

4.宏語言


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

1. 下載必要文件:

http://download.csdn.net/download/qqliyunpeng/8631841

下載地址設置爲  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.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編碼格式),一張截圖如下:


原文:https://blog.csdn.net/qqliyunpeng/article/details/45136127 
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章