|
@@ -1,26 +1,33 @@ |
|
|
# SourceInSight相关知识点 |
|
|
# SourceInSight相关知识点 |
|
|
## 常规操作 |
|
|
## 常规操作 |
|
|
- 工程新建/添加 |
|
|
|
|
|
|
|
|
### 工程新建/添加 |
|
|
|
|
|
|
|
|
1. 选择工程文件的位置 |
|
|
|
|
|
|
|
|
1. 选择工程文件的位置 |
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
2. 选择源码位置 |
|
|
|
|
|
|
|
|
2. 选择源码位置 |
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
3. 将源码导入 |
|
|
|
|
|
|
|
|
3. 将源码导入 |
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
|
|
|
- Add:基本的文件添加操作 |
|
|
|
|
|
- Add All:添加整个工程所有的源文件,最多只能添加下一级的文件(然后再选择是否递归添加子目录中的源文件,见上图对话框就和Add Tree功能类似) |
|
|
|
|
|
- Add Tree:添加指定的文件夹以及其子目录下的源代码文件 |
|
|
|
|
|
- Remove Tree:和Add Tree的功能相反 |
|
|
|
|
|
|
|
|
- 文件新建/添加 |
|
|
|
|
|
|
|
|
### 文件新建/添加 |
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
- 符号表同步:就是让 Source Insight 保持项目符号(函数、类、变量等)信息与实际源代码一致。 |
|
|
|
|
|
|
|
|
### 符号表同步 |
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
符号表同步 = 把源码中的函数、变量、类型等信息提取出来,建立一个可快速查找的数据库 |
|
|
|
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
- **Force all files to be re-parsed** |
|
|
- **Force all files to be re-parsed** |
|
|
|
|
|
|
|
@@ -44,7 +51,7 @@ |
|
|
- 你刚刚改动了当前文件的一些函数或变量,希望立即生效; |
|
|
- 你刚刚改动了当前文件的一些函数或变量,希望立即生效; |
|
|
- 快速同步,不影响其他文件。 |
|
|
- 快速同步,不影响其他文件。 |
|
|
|
|
|
|
|
|
- ⚠ 其他文件不受影响,如果涉及头文件或其他依赖文件,可能会不完整。 |
|
|
|
|
|
|
|
|
- 其他文件不受影响,如果涉及头文件或其他依赖文件,可能会不完整。 |
|
|
|
|
|
|
|
|
- **Add new files automatically** |
|
|
- **Add new files automatically** |
|
|
|
|
|
|
|
@@ -65,34 +72,72 @@ |
|
|
- 文件重命名或移动后保持项目干净。 |
|
|
- 文件重命名或移动后保持项目干净。 |
|
|
- 小心使用,可能会误删临时缺失但之后会恢复的文件引用。 |
|
|
- 小心使用,可能会误删临时缺失但之后会恢复的文件引用。 |
|
|
|
|
|
|
|
|
- 视图切换 |
|
|
|
|
|
|
|
|
### 视图切换 |
|
|
|
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
|
|
|
### 常用窗口打开/关闭 |
|
|
|
|
|
|
|
|
|
|
|
常见四大窗口: |
|
|
|
|
|
|
|
|
|
|
|
1. project Window:查看我们的工程所在文件夹以及文件夹下的文件 |
|
|
|
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
2. Symbol Window:用于查看我们开启的文件以及文件内所包含的函数 |
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
- 常用窗口打开/关闭 |
|
|
|
|
|
|
|
|
3. Context Window串口:用于查看,函数中某个参数与函数的关系 |
|
|
|
|
|
|
|
|
常见四大窗口: |
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
1. project Window:查看我们的工程所在文件夹以及文件夹下的文件 |
|
|
|
|
|
|
|
|
4. Relation Window窗口:用于查看函数以及参数所定义的位置 |
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
2. Symbol Window:用于查看我们开启的文件以及文件内所包含的函数 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
### 搜索引用 |
|
|
|
|
|
|
|
|
3. Context Window串口:用于查看,函数中某个参数与函数的关系 |
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
## 普通文本搜索(Search → Find) |
|
|
|
|
|
|
|
|
4. Relation Window窗口:用于查看函数以及参数所定义的位置 |
|
|
|
|
|
|
|
|
- **快捷键**:`Ctrl + F` |
|
|
|
|
|
- **作用**:查找文件中出现的文本(**不区分语法符号**,纯字符串匹配) |
|
|
|
|
|
- **功能亮点**: |
|
|
|
|
|
- 支持大小写匹配 |
|
|
|
|
|
- 支持正则表达式(Regular Expression) |
|
|
|
|
|
- 支持从当前位置、整个文件或选中区域查找 |
|
|
|
|
|
- **适用场景**: |
|
|
|
|
|
- 查找某个宏、错误码、注释等非符号内容 |
|
|
|
|
|
- **缺点**: |
|
|
|
|
|
- 找不到跨文件定义、不支持跳转到符号 |
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
## 全局搜索(Search → Find in Files) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- **快捷键**:`Ctrl + Shift + F` |
|
|
|
|
|
- **作用**:在整个工程或指定路径中查找文本(可正则) |
|
|
|
|
|
- **功能亮点**: |
|
|
|
|
|
- 可设置搜索路径、文件类型(*.c、*.h等) |
|
|
|
|
|
- 可将结果导出为列表窗口 |
|
|
|
|
|
- **适用场景**: |
|
|
|
|
|
- 搜索项目中所有文件中包含“某字符串”的位置 |
|
|
|
|
|
- **常用于**: |
|
|
|
|
|
- 搜索日志宏 `LOG_ERR`、关键字 `#define` 等 |
|
|
|
|
|
|
|
|
- 搜索引用 |
|
|
|
|
|
|
|
|
## 符号查找(Search → Lookup Symbol) |
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
- **快捷键**:`Ctrl + /` |
|
|
|
|
|
- **作用**:查找并跳转到某个“符号”的定义(函数、变量、宏等) |
|
|
|
|
|
- **依赖符号表同步** |
|
|
|
|
|
- **功能亮点**: |
|
|
|
|
|
- 模糊匹配,支持部分输入即可补全 |
|
|
|
|
|
- 可以定位到头文件或函数体定义 |
|
|
|
|
|
- **适用场景**: |
|
|
|
|
|
- 快速跳转函数/变量定义 |
|
|
|
|
|
- **缺点**: |
|
|
|
|
|
- 搜不到未同步的符号(需手动同步) |