`
mars5337
  • 浏览: 89796 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

sourceinsight配置及使用二

阅读更多
SourceInsight提供的功能

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

总地说来,SourceLink根据特定的搜索模式,把当前文件中满足模式的行、链接到由该行指定的其他源文件中。

所谓特定的搜索模式,共有两种“File, then line”和“Line, then file”,其中前后两部分依靠正则表达式的组的概念来予以分割。如果当前文件具有匹配行,比如“Error d:tcsrcq5.c 18: Lvalue required in function jsSort”,那么SourceInsight在该行创建SourceLink、把该行链接到由该行指定的文件中(即d:tcsrcq5.c,第18行)。

1.1 创建SourceLink

运行Search菜单的Parse Source Links…命令,在弹出的框中、选择搜索模式、并填入相应的正则表达式串,点OK,SIS就会解析当前文件,如果有匹配,就创建SourceLink。

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

可以打开日志信息,运行Parse Source Links命令,日志中能够匹配模式的每一行(通常是含有错误信息的行)、就会被设置上一个SourceLink

1.3在解析自定义命令输出时,使用SourceLink

首先勾选Custom Command 中的“Parse Links in Output”,然后选择特定的搜索模式,最后填入合适的正则表达式。这样,Source Insight把输出信息作为当前搜索用文件;并且,如果有匹配行(通常即编译错误信息行),SIS为 该行创建SourceLink、并把每一个错误信息中给定的文件(和行号)作为link目的地,这对于我们修改源代码错误非常有帮助。

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

2.1 替换(Replace)

目前来说,普通的替换命令、快捷键为ctrl+H,足以已满足工作要求。

在弹出的替换窗口中,在Search框中勾选Selection来只在所选文本区域中替换(当然这时你要先选定区域然后再按ctrl+H)、勾选WholeFile来在整个当前文件内替换、两者都不勾选来从当前光标处替换至文件末尾;点右边的Files…按钮,可选择替换多个文件的内容。

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

Smart Rename命令、快捷键是Ctrl+’,是上下文敏感的全局搜索替换。它可以智能地重命名全部项目文件中的一个标示符。SourceInsight的搜索索引(search index)使得搜索过程进行地非常快。而且,使用Smart Rename所做的替换会被记录在Search Results窗口中,每一条替换记录旁有一个SourceLink链接到替换发生地文件。

Smart Rename可以用来重命名标记(symbol)。如果勾选了Smart Reference Matching选项,Smart Rename就只在正确的上下文范围内进行重命名。它可以智能地重命名全部项目文件中的一个标示符;它可以重命名函数本地变量,类或结构体成员、函数。

在弹出的Smart Rename窗口中有下面几项∶

Old Name 填旧名称。光标下的词会被自动加载;光标的位置非常重要,这是因为Source Insight会根据本地上下文背景、准确地确定你想要重命名哪一个标记。

推荐只填单个词、而不是字符串。

如果你在命名成员变量、或本地变量(),Old Name框中会显示完全标记名、即上层容器名+标记名。例如,框中的“DocDraw.paintStruc”代表DocDraw是函数名,paintStruc是函数的本地成员变量。

New Name 填新名称。只填标记名,不填上层容器名。

Output Search Results 如果勾选,搜索替换结果日志会被输出到Search Results窗口中。可以通过Windows菜单来切换,或ctrl+tab切换察看。并且每一条记录旁会有SourceLink链接到替换发生地文件。

Confirm Each Replacement 每次替换询问。

Skip Comments 不重名注释部分。


【使用心得列表】

(1)如何用Smart Rename重命名数组的数组名?如果只选取数组名,会报错!

(2)如果勾掉Smart Reference Matching,会搜索全部项目文件,并且Old Name框中不显示完全限定名;如果勾选Smart Reference Matching,无法重命名数组名,而且鼠标位置不正确时会报错。应该如何应对?

3、在SourceInsight中提供的正则表达式

3.1在SourceInsight中提供的正则表达式

正则表达式,是用来匹配复杂模式的特殊搜索用字符串。正则表达式串中,许多字符具有特殊的含义。例如,有个特殊的字符代表 “行首”。

下面是SourceInsight提供的所有可用特殊字符∶

Table 4.3: Regular Expression Characters

Character

Matches

^ (at the beginning only)

beginning of line。如^Hello,匹配Hello在句首。

.

any single character

[abc]

any single character that belongs to the set abc

[^abc]

any single character that does not belong to the set abc

*

zero or more occurrences of the preceding character

+

one or more occurrences of the preceding character

t

a tab character

s

a space character

w

white space (a tab or a space character)

$

the end of the line。如TRUE$,匹配TRUE在句尾。


转义字符。如果在它后面有元字符,取消其特殊含义。


可利用 “(”和 “)”、把正则表达式分割成不同的组;模式中的每个组自左向右指定为 Group #n,n=1,2,…;组的概念在替换时很有用。

例如∶

abc(xyz)可匹配abcxyz,其中xyz被认为是group#1,

利用21来替换(abc)(xyz),替换结果为xyzabc。

3.2 正则表达式在配置tc编译器中的应用∶

正则表达式格式与源代码文件路径相对应,这里我的tc安装目录为d:tc,tc源文件放在d:tcsrc下,并命名为qn.c或qtn.c(其中n=1,2,…)。

观察Tc编译器某一次输出错误信息的格式∶

Error d:tcsrcq5.c 18: Lvalue required in function jsSort

则我们要匹配“d:tcsrcq5.c 18”部分,进一步地,按照SourceInsight捕捉输出并加以解析时的要求,要以组的形式、分别匹配“d:tcsrcq5.c 18”中的文件部分和行号部分∶

行号([1-9][0-9]*)

空格行号s([1-9][0-9]*)

文件名(d:tcsrc[qQ][tT][1-9][0-9]*.[cC])

全部加起来为∶

(d:tcsrc[qQ][tT]*[1-9][0-9]*.[cC])s([1-9][0-9]*)


3.3 正则表达式在配置javac编译器中的应用∶

我的JAVA_HOME是c:jdk,我的java源文件放于d:javasrc中,并命名为qn.java或qtn.java(其中n=1,2,…)。

观察JDK编译器某一次输出错误信息的格式∶

D:javasrcQ3.java:3: ';' expected

正则表达式为∶

([dD]:javasrc[qQ][tT]*[1-9][0-9]*.java):([1-9][0-9]*)


4、自定义命令

自定义命令与项目相关,在一个项目中定义的所有自定义命令属于该项目、只对该项目有效(包括快捷键等)。

自定义命令类似于命令行批处理文件。SIS允许自定义命令在后台运行;并可以捕捉自定义命令的输出、放置于文件中、或粘贴入当前光标插入点。

分别利用上面SIS对输出信息的处理方式,自定义命令对集成编译器相当有用,可以捕捉编译器输出并创建SourceLink寻错;自定义命令对于文本过滤也相当有用,可选中待过滤区块、运行Sort自定义命令、粘贴回选定区块、即完成文本过滤。

请按下面步骤创建自定义命令∶

Options菜单Custom Command

点右边Add钮、填入新自定义命令名称,或下拉左边Commands、选择命令进行修改

Run框、填入待执行命令行,可含有特殊元字符,见后面的元字符表

Dir框、执行命令行时应处的目录,如不填,以源代码文件所在目录为命令执行目录

勾选Output框的Capture Output、输出被捕捉,如果勾选Paste Output,输出被粘贴

勾选Control Group框中的Save Files First、SIS会在运行命令前先检查文件是否保存

勾选Control Group框中的Pause When Done、SIS会在命令结束后暂停、方便检查

勾选Source Links in Output框中的Parse Source Links,

ps:

Sourceinsight使用技巧:

http://gcody.blog.ccidnet.com/blog-htm-itemid-287620-uid-36931-do-showone-type-blog.html

http://blog.chinaunix.net/u2/63367/showart_498728.html
分享到:
评论

相关推荐

    Source Insight配置文件.xml

    自己使用的Source Insight 4.0配置文件

    SourceInsight-配置文件

    在这个"SourceInsight配置文件"的压缩包中,包含的是SourceInsight的工程环境配置,这对于初学者来说是非常有用的资源。 `GLOBAL.CF3`是SourceInsight的核心配置文件,它记录了用户的个人设置、项目信息和工作环境...

    SourceInsight 4.0配置文件

    **SourceInsight 4.0配置文件详解** SourceInsight是一款强大的源代码分析和编辑工具,尤其在编程语言如C/C++、Java、C#等领域中广泛应用。它提供了高效的代码浏览、查找、编辑和理解功能,是软件开发人员提高工作...

    sourceinsight4 风格配置文件

    SourceInsight的配置文件使用了专有的CF3格式,这是一种二进制文件,用于存储各种配置项。虽然不能直接用文本编辑器打开查看,但可以通过SourceInsight自身的配置管理器来编辑和应用这些设置。 **4. 如何使用配置...

    source insight 配置文件

    **Source Insight配置文件详解** Source Insight是一款广受欢迎的源代码查看和编辑工具,尤其在软件开发领域中,它以其强大的代码导航、语法高亮、自动完成等功能受到程序员的喜爱。本篇将详细介绍如何理解和使用...

    SourceInsight4.0的个人配置文件

    0. 此为C/C++的SourceInsight配置文件,其他语言的为默认。(字体颜色在其他编程语言有效) 1. 主要就是给那些习惯于等宽字体编程的人们。采用微软Vista自带的等宽字体:Consolas 2. 详情明细参考:...

    SourceInsight配置文件

    **SourceInsight配置文件详解** SourceInsight是一款广泛使用的源代码查看和编辑工具,尤其受到程序员和软件开发者的青睐。其强大的代码智能分析和自定义功能使得编程过程更为高效。在SourceInsight中,配置文件起...

    source insight4.0配置文件.xml

    自用完美的source insight配置文件,黑色主题,媲美vscode

    sourceinsight 配置文件

    古人云,窈窕淑女,君子好逑。一副好的外表确实让人心旷神怡,同样,一份护眼好看的软件使操作界面对程序员来说也能倍感愉悦,大大提升工作效率。...资源是Source Insight已经配置成护眼模式的配置文件。

    sourceinsight完美配置文件

    前华为同事整理的 sourceinsight配置文件,非常好用。

    source insight4.0 经典绿色护眼配置

    本文将详细介绍如何利用提供的“si4 2018-2-6.xml”配置文件,实现Source Insight 4.0的经典绿色护眼配置,让长时间编程的你也能享受到舒适的视觉体验。 首先,让我们了解Source Insight 4.0的基本配置流程。在启动...

    sourceInsight配置文件-GLOBAL.CF3

    Source Insight 3.5

    source insight3.5版+最好的配置的文件.cf3

    本文将围绕"source insight3.5版+最好的配置的文件.cf3"这一主题,深入探讨Source Insight 3.5版本的优秀配置文件及其使用技巧,帮助开发者更高效地利用这一强大的代码编辑器。 首先,Source Insight 3.5版是该软件...

    SourceInsight全局配置文件

    **SourceInsight全局配置文件详解** SourceInsight是一款广受欢迎的源代码查看和编辑工具,尤其受到程序员和软件开发者的青睐。它具有强大的代码浏览、分析和编辑功能,支持多种编程语言,包括C、C++、Java等。本文...

    source insight配置 GLOBAL

    source insight配置 source insight配置 source insight配置 source insight配置

    source insight配置文件

    source insight配置文件,source insight配置文件,source insight配置文件source insight配置文件

    sourceinsight4.0完美配置文件

    sourceinsight4.0最完美的配置文件,已经经过很多人去验证过了,我们公司开发全都使用这个配置,特别方便。

    Source Insight4.0 多个配色主题,huawei配置及宏命令

    这份配置文件可能是华为内部使用的Source Insight配置,可能包含了特殊的关键字高亮、快捷键绑定、代码风格规范等,以符合华为的编码标准和团队协作要求。 3. **宏命令**: Source Insight支持自定义宏命令,这是...

Global site tag (gtag.js) - Google Analytics