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