Tools - 源代码阅读分析工具Source Insight

时间:2023-01-30 09:36:52

简介

https://www.sourceinsight.com/
Source Insight是一个面向项目开发的程序编辑器和代码浏览器,可以分析C/C++、C#、Java、Python等语言源代码。
在分析源代码的同时,可以动态维护它自己的符号数据库,并自动显示有用的上下文信息。

001 - SourceInsight建立工程添加文件

菜单栏---》Project---》New Project---》New project name,命名并设置工程保存位置---》New project Settings,选择源代码目录---》Add and Remove Project Files,添加所有Add All---》Add to Project,勾选所有选项---》根据需要增删文件,点击Close。

002 - SourceInsight同步文件

同步文件可以自动找到源代码之间的依赖关系,例如:自动找到调用某个函数或变量的位置。

  • 菜单栏---》Project---》Synchronize Files---》直接点击OK;
  • 快捷键“Alt+Shift+S”;

003 - SourceInsigth的查找功能

  • 菜单栏---》Search---》根据需要启动“Search Files”、“Search Project”、“Lookup References”等搜索框;
  • 在工具栏点击蓝色大“R”图标,启动“Lookup References”搜索框;
  • 快捷键“Ctrl+/”启动“Lookup References”搜索框;

004 - SourceInsigth的查看功能

将光标停留在关键字位置,将自动显示关键字的定义;双击显示内容,将跳转到该文件,从而可以继续查找。

005 - SourceInsight添加新类型文件

菜单栏---》Options---》Document Options---》Document Type---》选择所属具体类型---》右侧File filter,添加文件后缀---》点击Add Type。

006 - SourceInsight设置字体大小

菜单栏---》Options---》Document Options---》Screen Fonts,根据需要设置。

007 - SourceInsight设置快捷键

以设置全选快捷键为例:菜单栏---》Options---》Key Assignments,查询关键词找到select all---》Assign New Key,根据提示更改为“Ctrl+A”。

008 - SourceInsight设置背景色

菜单栏---》Options---》Preference---》Color---》Windows Background,设置背景色,例如护眼色“85,90,205” 。

009 - SourceInsight显示行号

打开代码文件---》菜单栏---》View---》Line Numbers。

010 - SourceInsight项目报告

获取当前项目的文件个数、代码行数等:菜单栏---》Project---》Project Report。

011 - SourceInsight重建项目

新同步代码依赖关系:菜单栏---》Project---》Rebuild Project。

012 - SourceInsight查看函数关系调用图

菜单栏---》View---》Panels---》勾选“Relation Window”, 会出现一个显示函数调用关系的窗口。
打开代码文件,在左侧的文件内容窗口中选择指定部分,即可看到函数调用关系。

013 - SourceInsight添加其他语言的语法高亮

通过使用语言插件SourceInsight可以添加其他语言的支持。
例如:Python的CLF插件(https://www.sourceinsight.com/pub/languages/Python.CLF
详情请查看官网信息:https://www.sourceinsight.com/download/custom-languages/

014 - SourceInsight中文显示乱码

如果是SourceInsight3中文显示乱码,先关闭源代码文件,然后利用文本编辑器转换源代码文件编码为ANSI,再用SourceInsight3打开即可。
如果是SourceInsight4中文显示乱码:

  • 针对单个文件中文乱码,菜单栏---》Reload As Encoding...---》选择对应的“Chinese Simplified”。
  • 所有文件中文乱码,关闭所有打开的文件,菜单栏---》Options---》Preference---》Files---》Default encoding---》选择对应的“Chinese Simplified”---》再用SourceInsight4打开即可。

015 - SourceInsight恢复默认界面设置

方法一:菜单栏---》View,根据需要选择功能窗口;
方法二:关闭SourceInsight并删除Settings文件夹中的配置文件,然后重新打开SI即可。
查看Settings目录地址:菜单栏---》Options---》Preference---》Folder---》Settings Folder一栏。

Tools - 源代码阅读分析工具Source Insight的更多相关文章

  1. stm32阅读代码工具source insight

    不知道学stm32有没有这样的烦恼,想看一个项目的代码,但是用keil又发现建立工程太麻烦,单个打开文件又找不到函数和变量之间的依赖关系,变量和函数又不能高亮显示,linux下vim和emacs虽然很 ...

  2. Linux源代码分析工具-Source Insight

    下载地址:http://www.sourceinsight.com/down35.html 可用注冊码:SI3US-205035-36448 使用说明:http://wenku.baidu.com/v ...

  3. C C++源代码安全分析工具调研

    C C++源代码安全分析工具调研:http://blog.csdn.net/testing_is_believing/article/details/22047107

  4. 阅读linux内核代码的工具-- Source Insight

    http://blog.csdn.net/luckyaslan/article/details/7869235 Step 1:安装Source Insight并启动程序 可以进入图1界面,在工具条上有 ...

  5. 代码阅读分析工具Understand 2.0试用

    Understand 2.0是一款源代码阅读分析软件,功能强大.试用过一段时间后,感觉相当不错,确实可以大大提高代码阅读效率.由于Understand功能十分强大,本文不可能详尽地介绍它的所有功能,所 ...

  6. Lua源代码阅读分析问题列表(转)

    最近正在阅读lua源码,遇到座灯塔,转载如下: 我个人的习惯是带着问题去研究一个新题目,比如这次阅读Lua代码,暂列下面这些问题. 1)什么是基于栈.基于寄存器的虚拟机(VM)设计?Lua如何实现基于 ...

  7. windows7使用Source insight上远程改动ubuntu共享内核源代码

    因为本人阅读喜欢使用source insight.前段时间接触了linux核代码,而这份代码仅仅能放在ubuntuserver上编译.刚開始的时候是在windows上改动,完了之后再copy到serv ...

  8. windows7使用Source insight上远程修改ubuntu共享内核源码

    由于本人阅读喜欢使用source insight.前段时间接触了linux核代码,而这份代码只能放在ubuntu服务器上编译,刚开始的时候是在windows上修改,完了之后再copy到服务器上去编译, ...

  9. Source Insight 3.50.0065使用详解

    转自calvinlee1984 Subject:Source Insight3.50.0065使用详解 Date:     21-Oct-2011 By:         Calvinlee1984@ ...

随机推荐

  1. 帮你选处理器:CPU T9500-p9500-T9400-T9300-p8700对比分析!

    许多人对处理器是P和T开头含混不清,不甚了解,也怪英特尔的处理器型号实在是太过复杂.这需要具体型号来看的.让我们先来看看英特尔的官方解释吧 T: Mobile Highly Performance-- ...

  2. 【TOMCAT】Tomcat gzip压缩传输数据

    概述 由于我们项目的三维模型文件非常大,为了提高传输速度,在服务端对其做zip压缩处理非常有必要,能够极大的提高传输速度. 配置 首先需要修改web.xml中请求的数据文件的mime类型的mappin ...

  3. jquery ajax 使用

    异步刷新实现方式有多种,也可以借助JS的多种框架,下面是使用JQuery框架实现的AJAX 验证用户名是否存在 jQuery.ajax概述 HTTP 请求加载远程数据. 通过jQuery 底层 AJA ...

  4. iOS 容器控制器 (Container View Controller)

    iOS 容器控制器 (Container View Controller) 一个控制器包含其他一个或多个控制器,前者为容器控制器 (Container View Controller),后者为子控制器 ...

  5. 微信小程序知识总结及案例集锦

    微信小程序知识总结及案例集锦 微信小程序的发展会和微信公众号一样,在某个时间点爆发 学习路径 微信小程序最好的教程肯定是官方的文档啦,点击这里直达 微信官方文档 认真跟着文档看一遍,相信有vue前端经 ...

  6. rpm命令的使用

    如果服务器配置了本地yum源,大部分的常用软件包都是有的.如果差了头文件或者什么so文件,可以按如下方式找:#以memory.h为例 [root@sz-cdn-centos7-1 tmp]# wher ...

  7. cadence电源和地平面的处理

    覆铜是PCB布线的常用操作,下面总结覆铜的方法以及电源层分割的方法 PCB设计中,经常面临电源.地噪声的挑战,在高速数字系统中,电源和地的设计非常关键!电源和地的主要作用有: 一,为数字信号提供稳定的 ...

  8. Python之字典方法

    def clear(self): # 清除所有内容 """ D.clear() -> None. Remove all items from D. "&q ...

  9. 基于sklearn和keras的数据切分与交叉验证

    在训练深度学习模型的时候,通常将数据集切分为训练集和验证集.Keras提供了两种评估模型性能的方法: 使用自动切分的验证集 使用手动切分的验证集 一.自动切分 在Keras中,可以从数据集中切分出一部 ...

  10. Android开发中遇到的问题(二)——新建android工程的时候eclipse没有生成MainActivity和layout布局

    一.新建android工程的时候eclipse没有生成MainActivity和layout布局 最近由于工作上的原因,开始学习Android开发,在入门的时候就遇到了不少的坑,遇到的第一个坑就是&q ...