source insight的查找功能

sourceinsight是一款很好的c语言的程序编辑器,方便对project管理,方便程序的阅读和编辑。查找功能使用十分频繁,选项较多,与其它软件的查找功能也类似,下面对英文版的查找功能,做简单说明:

查找参数:
whole wordsonly                 全字匹配查找
casesensitive  :                  区分大小写
projectwide                         项目内查找
includesubdirectories          包含子目录查找
skip inactivecode               跳过无效代码查找
skipcomments                   跳过注释查找
search onlycomments       仅在注释在查找

 

3.2.1.1 Loopup References

我们最常用的一种查找方式是选择Search/Lookup References或按Ctrl+/组合键再或者鼠标点 R按钮,在弹出的Loopup References窗口进行查找操作。 在SearchMethod中有四种可选的查找方式:Simple String、Regular Expression、 KeywordExpression和Look Up Reference。其中SimpleString是最普通的查找方式,可以查找文件中出现的任意字符或字符,甚至可以查找 _upap || u这样的字符串,但是在工程较大时,查找过程会较慢。 RegularExpression查找方式将在后面讲述正则表达时会介绍到,这里暂时按下不表。 Keyword Expression和Look UpReference查找的结果基本相同,但是显示方式略有差异。这两种方式都是使用SI预先建立的数据库,查找起来速度相当快。但通常这种速度只对在查找标识符时有明显效果。对于像函数名,变量名等的查找,强烈建议使用这两种方式进行查找。

3.2.1.2 SearchFiles

选择Search/Search Files或按Ctrl+Shift+F组合键,在弹出的Search Files窗口进行查找操作。在File Name框中可以填入文件名或文件夹。注意当要查询的文件夹双包含子文件夹时,可以勾选Options中的IncludeSubdirectiories,实现对各层文件的递归搜索。

3.2.1.3 SearchProject

选择Search/Search Project,在弹出的Search Project窗口进行查找操作。操作与LoopupReferences几乎完全一致,它们各自保存上次搜索的配置。

 

Lookup References Dialog box

The Lookup References command is very similar to the Search Projectcommand. In fact, each dialog box is identical. However, eachdialog box has its own persistent state.

Find References To

Type the symbol name you want to locate. The word under the cursoris automatically loaded into this text box. Source Insight will usethe context of the cursor position to determine the exact symbolinstance you want. If you invoked Lookup References from a symboldialog box or window, then Source Insight keeps the exact symbolreferences along with this text box.

Typically, you would type the name of an identifier in yourprogram, however you can type any string here and a project-widesearch will be performed. The search is very fast if you type asingle word only.

Search In

This drop-down list contains a list of document types. You can usethis list to restrict the search to only a particular type of file,or just the current file. If the Project Window is visible, thenyou can also use this list to specify the files selected in theProject Window.

Search Method

You can pick the search method to use from this list. There arefour different searching methods available:

• Simple String

• RegularExpression interprets the pattern as a regularexpression.

• KeywordExpression similar to an Internet searchquery.

• LookupReference searches for symbol references.

Lines of Context

This only applies if you selected the Keyword Expression searchmethod. This specifies how closely, in number of lines, thekeywords must occur in order to qualify as amatch. Seealso “Keyword Expressions”.

Find word variations

If enabled, Source Insight will also find different ending forms ofthe keywords you specified. For example, if you specified thekeyword “open”, Source Insight will also find “opens”, or “opened”,or “opening”. This option is only available for the KeywordExpression search method.

Search Options

Case Sensitive

Specifies whether the search is case sensitive or not.

Whole Words Only

For the Lookup References mode, this option is always on. If youchoose a different search method, this will restrict matches toonly whole words.

Skip Inactive Code

If enabled, then only code that is active under conditionalcompilation is searched. You must first specify known conditions inthe Preferences: Languages dialog box, in order for Source Insightto know what conditions are active or not. Conditional compilationonly applies to some languages.

Skip Comments

If enabled, then comments will not be searched.

Search Only Comments

If enabled, then only comments will be searched. This is mutuallyexclusive with the Skip Comments option. The comment options slowthe search down a little.

Smart Reference Matching

This enables Source Insight’s smart reference matching feature.Source Insight will determine whether each reference found isactually referring to the symbol you are looking for.

The Smart Reference Matching option means that the search resultswill only contain references strictly to the exact symbol youspecified. For example, if you select a member of a struct and lookup its references, the search results will only contain referencesto that particular member of that particular struct – not just anystring that is equivalent. Note that this option slows the processdown because each same-string occurrence has to be qualified with asymbol lookup.

Touch files and cause recompile. Turn this on to cause each file’s“last modified” time stamp to be set to the current time. This isuseful if you have a compile time dependency on an identifierusage. Just turn this on and search for references with thiscommand. The places where the identifier is referenced will be“touched” and your make program or development system willrecompile those files the next time you build your program.

### 如何使用 Source Insight 进行代码查看和编辑 #### 安装与配置 安装 Source Insight 后,需创建一个新的项目来管理源代码文件。通过指定项目的根目录以及包含的子目录,Source Insight 可识别并索引这些路径下的所有支持类型的文件[^1]。 #### 打开现有项目或新建项目 对于已有项目,可通过菜单栏中的 `File` -> `Open Project` 来加载;而对于新项目,则选择 `New Project Wizard` 并按照向导提示完成设置。这一步骤确保了软件能够正确解析目标工程结构及其依赖关系。 #### 浏览与导航功能 利用 **Project Files** 面板浏览整个项目的层次结构,双击任意条目即可快速定位至相应位置。当用户在编辑器内选中某个符号(如变量名、方法名),按下 F12 键可实现对该符号定义处的即时跳转。此特性极大提高了跨多个文件间追踪逻辑流程的工作效率[^2]。 #### 关联分析工具 借助于内置的关系图谱(`Relation`)视图,开发者不仅能看到当前光标所指实体被何处引用的信息,还能进一步探索更深层次的调用链路。这对于理解复杂系统内部交互模式尤为有用。 ```cpp // 假设有一个名为 MyClass 的类,在不同模块中有若干实例化操作。 MyClass obj; // 当前文件内的声明 obj.doSomething(); // 调用了成员函数 doSomething() ``` 在这种情况下,右键单击 `doSomething()` 方法名称并通过上下文菜单选取 "Find References" 或者直接按 Shift+F3 ,就可以获取到该方法在整个解决方案范围内所有的调用情况列表。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值