source insight 的开源替代——sourcetrail,开源地址:https://github.com/CoatiSoftware/Sourcetrail
Sourcetrail 是一个交互式源代码浏览器,它通过为代码编制索引并收集有关其结构的数据来简化现有源代码中的导航。然后,Sourcetrail 提供了一个简单的界面,该界面由三个交互式视图组成,每个视图在帮助您获取所需信息方面都发挥着关键作用:
- 搜索:使用搜索字段在源代码中快速查找和选择索引符号。自动完成框将立即提供整个代码库所有匹配结果的概览。
- 图:该图显示源代码的结构。它专注于当前选定的元件,并直接显示其他元件的所有传入和传出依赖项。
- 法典:Code (代码) 视图在代码片段列表中显示当前所选元件的所有源位置。单击其他源位置可以更改选择并更深入地挖掘。
注意:Sourcetrail 目前支持 C/C++、Java 和 Python 语言。因此,大部分 UI 设计都基于这些语言,并且可能会在支持其他语言后立即更改。有关更多信息,请查看支持的语言。
支持的语言
C
C 支持由 Clang 11.0.0 提供支持。对于加载 C 代码时遇到的问题,请查看 Clang 语言兼容性或在我们的错误跟踪器中报告错误。
C++
C++ 支持由 Clang 11.0.0 提供支持。有关更多信息,请访问 Clang C++ 状态。对于加载 C++ 代码时遇到的问题,请查看 Clang 语言兼容性或在我们的错误跟踪器中报告错误。
爪哇岛
Sourcetrail 包括对 Java 12 及更低版本的支持,它由 Eclipse JDT 提供支持。如果您在 Java 项目中使用 Sourcetrail 时遇到任何问题,请在我们的错误跟踪器中提供一个最小示例来告知我们。
蟒
Sourcetrail 包括对 Python 2 和 Python 3 的支持,后者由我们的开源 SourcetrailPythonIndexer 提供支持。如果您在 Python 项目上使用 Sourcetrail 时遇到任何问题,请在我们的 bug 跟踪器中提供一个最小示例来告知我们。
开始
这个简短的介绍将简要指导您完成 Sourcetrail 的项目设置和用户界面。项目符号列表将为您提供下一步要执行的步骤:
启动 Sourcetrail
成功下载 Sourcetrail 后,您就可以运行该应用程序了。有关安装的帮助,请访问安装部分。
任务:
- 启动 Sourcetrail。
启动 Sourcetrail 后,您将看到 Start 窗口。在这里,您可以创建自己的项目或选择预先索引的项目。
任务:
- 单击 New Project 以创建新项目。
- 或从 Recent Projects (最近的项目) 中选择一个 (例如: TicTacToe) 并继续 UI Intro (UI 介绍)
创建新项目
创建新的 Sourcetrail 项目时,您将使用 Project Setup Wizard。此向导将设置过程拆分为几个后续步骤。根据项目的结构和使用的构建系统,项目设置有不同的类型。选择正确的设置方法很重要,并且可以使设置过程变得更加容易。
任务:
- 为您的项目指定 Name (名称) 并选择 Sourcetrail 项目的 Location (位置) 作为 Sourcetrail 项目所在的位置。
- 单击 Add Source Group 将源文件添加到项目中。
添加源组
Sourcetrail 项目由多个 Source Group 组成。每个 Source Group 都使用特定语言、一组文件和所有配置来为这些文件编制索引。每种支持的编程语言都有不同类型的 Source Group。此外,对于大多数项目来说,创建单个 Source Group 就足够了。
滚动浏览图像以获取有关此设置的详细说明。
任务:
- 选择您选择的 Source Group 设置类型,并在创建项目后立即返回此处。
C/C++ 的源组设置
C和C++的源组设置类型相同。
您在使用 CMake、Make 还是 Qt Creator 吗?
如果您使用 CMake 或 Make 作为构建环境,则可以将 clang JSON 编译数据库导出为文件。Compilation Database 包含构建项目所需的所有信息,例如源文件、包含路径和编译器标志。拥有编译数据库使 Sourcetrail 中的项目设置变得更加容易。如果可能,我们建议使用此方法。compile_commands.json
导出编译数据库:
- 通过定义标志从 CMake 开始。(不支持 Visual Studio CMake 生成器)
CMAKE_EXPORT_COMPILE_COMMANDS
- 对于 Make projects (创建项目),请使用 Bear。熊掌记在模拟构建过程中生成文件。熊掌记已在 FreeBSD、GNU/Linux 和 OS X 上进行了测试。
compile_commands.json
- 从 Qt Creator 4.8 版本开始,从“构建”菜单中选择“生成编译数据库”。
如果您成功导出了文件,请继续从 Compilation Database 创建 Source Group,并在创建完项目后返回。compile_commands.json
您是否在使用 Visual Studio?
如果您使用的是 Visual Studio,则可以继续从 Visual Studio 创建源组,并使用我们的 Visual Studio 插件导出编译数据库。
创建 Empty
如果以上选项都不适用于您的项目,请继续创建空的 C/C++ 源组,并在创建项目后返回此处。