Source Insight是一款专门为程序员设计的源代码编辑器和代码浏览工具,由Source Dynamics公司开发。它主要用于理解已有的复杂代码库,帮助用户快速高效地进行代码分析、编辑和浏览。Source Insight提供了丰富的视图布局和视觉主题,用户可以根据个人喜好和需要调整编辑器环境,实现定制化的工作空间。

style-prop

软件支持语法高亮和代码折叠,这些功能有助于提升代码的可读性和编辑效率。Source Insight的目录对比功能也极大地简化了源代码版本之间的差异比较。Unicode支持确保了它能够处理多种语言编码的源代码文件。它的自动声明显示功能让用户在编辑代码时能够即时查看任意变量或函数的定义,进一步提高了代码审查和编辑的速度。

除了上述特点,Source Insight还提供了深入的代码分析工具,如呼叫图表,它能够显示函数之间的调用关系,帮助用户了解代码逻辑结构。软件的高度可定制性包括键盘快捷键的自定义,让每位用户都能根据自己的编程习惯优化操作效率。凭借着对多种编程语言和项目类型的强大支持,Source Insight是一个极具吸引力的工具,特别适合需要深入分析和理解大型代码库的开发者。

主要优点

  • 有助于理解现有的代码库。
  • 快速导航函数调用和调用者。
  • 几乎立即即可找到对函数、变量等的引用。
  • 请参阅调用图和类树图。
  • 无需打开文件即可预览函数和类定义。
  • 使用语法格式查看对变量和其他声明的实时引用。
  • 强大的编辑功能,包括代码片段、符号自动完成和智能重命名。
  • 动态信息面板协同工作以创建高效的工作流程。

完成更多工作
少打字,让 Wing 担心细节。使用人工智能编写和重新设计您的代码。在实时 Python 运行时中交互式工作。轻松浏览代码和文档。

编写更好的代码
在 Wing 深度 Python 代码分析的帮助下,避免常见错误并及早发现问题。通过智能重构、代码检查和重新格式化保持代码整洁。

更快地发现错误
调试任何 Python 代码。检查调试数据并以交互方式尝试错误修复,而无需重新启动应用程序。在本地或远程主机、虚拟机或容器上工作。

AI辅助软件开发
您可以要求 Wing 使用生成式 AI (1) 在当前输入位置实现缺失的代码,(2) 通过描述您想要进行的更改来重构、重写或扩展现有代码,(3) 从其预期功能和设计的描述;(4) 通过聊天来理解和改进代码。示例请求包括“将此函数转换为 Python 生成器”、“重写此线程代码以异步运行”和“为 A 类创建单元测试”。您的角色从手动编写代码转变为指导能够完成各种编程任务的智能助手。

强大的交互式调试器
Wing 的调试器可以轻松修复错误并以交互方式编写新的 Python 代码。使用条件断点来隔离问题,然后逐步执行代码、检查数据、使用调试控制台的命令行尝试错误修复、监视值并递归调试。您可以调试从 IDE 启动、托管在 Web 框架中、从嵌入式 Python 实例调用或在远程主机、VM、容器或集群上运行的多进程和多线程代码。Wing 还提供了用于科学和数据分析任务的数组和数据帧查看器。

远程和容器开发
Wing 的快速配置远程开发支持将 Wing 的所有功能无缝、安全地提供给在远程主机、虚拟机、容器或集群上运行的 Python 代码。运行 macOS 和 Linux 的主机可以进行远程开发,包括由 Docker、Docker Compose、AWS、Vagrant、WSL、Raspberry Pi 和 LXC/LXD 托管的主机。

智能编辑器
Wing 的编辑器通过上下文相关的自动完成和文档、内联错误检测和代码质量分析、PEP 8 实施、调用辅助、自动编辑、导入管理、重构、代码折叠、多重选择、可定制代码来加速交互式 Python 开发片段等等。Wing 可以模拟 vi、emacs、Eclipse、Visual Studio、XCode 和 MATLAB。

简单的代码导航
Wing 可以通过转到定义、查找用途、查找项目中的符号、编辑器符号索引、模块和类浏览器、键盘驱动的搜索以及强大的多文件搜索来轻松绕过代码。访问历史记录会自动存储,因此您可以立即返回到以前访问过的代码。或者定义并遍历分类书签,这些书签会随着代码更改而自动跟踪。

集成单元测试
Wing 支持使用 unittest、doctest、nose、pytest 和 Django 测试框架进行测试驱动开发。使用 Wing 强大的调试器可以轻松诊断和修复失败的测试,并且您可以在单元测试设置的实时运行时上下文中以交互方式编写新代码。Wing 可以跟踪和显示单元测试的代码覆盖率,以便您了解测试对代码的执行情况。覆盖率数据还用于确定对代码的编辑何时使之前收集的测试结果无效。

项目管理
Wing 强大的项目管理功能可与 virtualenv、Poetry、pipenv、conda 和 Docker 管理的 Python 环境配合使用,并使用 Git、Mercurial、Perforce、Subversion 或 CVS 进行修订控制。您可以轻松地从 Wing 创建新的 Python 环境,添加、删除或更新 Python 包,并冻结您的包配置以供其他开发人员使用。

可定制和可扩展
Wing 提供数百个配置选项,影响编辑器模拟、显示主题、语法着色、UI 布局等。轻松切换暗模式,放大演示和会议界面,并使用透视图管理特定于任务的 UI 配置。可以通过编写调用 代码分析

Source Insight 会在您工作时解析您的源代码并动态维护自己的符号信息数据库,并自动向您提供有用的上下文信息。Source Insight 还可以显示引用树、类继承图和函数调用树。Source Insight 有一组辅助面板窗口,它们协同工作,为您提供源代码和源信息的快速、有用的导航。

始终保持最新的符号信息
由于程序不断在开发中,因此即使代码中无法编译的符号也能以最新的准确性进行浏览,这一点很重要。Source Insight 维护其符号数据库以立即提供浏览功能,而无需编译项目或依赖编译器提供浏览器文件。即使在您编辑代码时,Source Insight 也会快速、无干扰地更新有关您的文件的信息。此外,符号功能会自动内置到每个 Source Insight 项目中。您不需要构建任何额外的标记文件。

调用图
关系窗口是 Source Insight 的一项创新,可以显示符号之间有趣的关系。它在自己的面板窗口中后台运行,并跟踪您选择的符号。它可以显示类层次结构、调用树、引用树等等。

类继承显示
您工作时会在后台自动获取信息,但您可以在需要时与“关系”窗口进行交互。

关系窗口可以以图形方式或轮廓格式查看。您还可以打开多个关系窗口,每个窗口显示不同类型的信息。

项目范围内的关键字搜索
就像在您的代码库上进行互联网搜索一样

您可以使用“搜索项目”命令,就像对项目进行 Web 搜索一样。这使您可以在指定行数内查找引用一个或多个主题的代码段。它甚至可以在有意义的符号名称片段上找到匹配项。您可以使用布尔表达式并查找单词变体。

例如,您可以键入“保存磁盘(复制或重复) ”,Source Insight 将查找所有对“保存”、“磁盘”以及彼此相邻出现的“复制”或“重复”的引用(以及单词变体,例如“saves”、“saved”和“ saving”),包括函数和变量名称,例如SaveFile或make_duplicate。

查找参考资料
快速搜索整个项目中符号的引用。Source Insight 对您的源代码进行索引以使其速度更快。

智能重命名
Source Insight 的上下文相关智能重命名允许您通过一个简单的步骤轻松重命名变量、函数、类成员和其他标识符。智能重命名足够智能,可以重命名局部作用域变量以及全局或类作用域标识符。索引使操作变得更快。

符号自动完成
自动完成会向您显示潜在标识符名称的列表。Source Insight 可以向您显示函数和变量名称,以及嵌套到多个深度级别的类和结构字段。Source Insight 即时解码变量的类型(包括继承)。文件名也会自动完成。

自动显示声明
Source Insight 2.0 引入了一项称为上下文窗口的创新功能。上下文窗口根据光标所在的标识符或在任何面板中选择的符号或文件自动显示符号定义。

上下文窗口在后台更新并跟踪您正在做的事情。您可以单击一个标识符,上下文窗口将自动显示该符号的定义。如果标识符是变量,上下文窗口将解码其声明以显示其基本结构或类类型。

上下文窗口自动预览在项目窗口中选择的文件、关系窗口中的引用和符号等。

上下文语法格式
语法格式是 Source Insight 的一项重要创新,它以密集、令人愉悦且有用的方式呈现信息。它提供了极大改进的显示功能,包括具有用户定义样式的完整富文本格式。Source Insight 根据有关项目的词汇和符号信息自动应用样式。您可以完全自定义样式格式。

格式化传达信息
与简单的语法突出显示不同,应用于标识符的格式基于其范围和声明的类型。在此示例中,您可以根据格式区分类成员和文件范围符号。

可定制的风格
您可以控制语法格式样式,这些样式会根据解析和范围规则自动应用于源代码元素。您可以为多种类型的语法元素和标识符设置格式选项。您可以极大地改变源代码的外观。

有用的语法装饰
Source Insight 可以自动向您的代码添加额外的装饰以改善其显示。

常见运算符,例如指针取消引用右箭头 (->) 或赋值运算符 (=),可以替换为符号运算符,例如箭头。

嵌套括号以不同大小显示,以便更容易识别匹配集。

goto语句中出现向上或向下箭头,指向目标标签的方向。

自动“结束大括号”注释被添加到 C/C++/C# 和 Java 代码中的右花括号中。这使得更容易理解嵌套的 if、while、switch 和其他代码块。

自动参考突出显示
Source Insight 可以突出显示对光标位置处符号的引用。例如,您可以单击变量名称,对该变量的所有引用都将突出显示。引用是上下文相关的,因此不同范围内的符号不会突出显示。这适用于变量、类成员、函数等。这是一个由文件类型控制的选项。

可折叠代码块
嵌套的代码块和区域可以折叠和展开,以帮助您导航和理解复杂的函数。

概览滚动条
概述滚动条的位置与滚动条类似,但可以让您鸟瞰文件。它可以向您显示嵌套、函数边界、书签,并帮助您在长函数中进行定位。

多种布局
保存多个窗口布局,并在它们之间快速切换。

多种视觉主题
Source Insight 附带多个颜色和字体的视觉主题。您可以快速切换主题,或创建自己的主题。视觉主题捆绑了所有颜色和字体设置,以及语法格式样式。

您还可以有选择地自定义各个面板。Source Insight 有许多颜色和字体选项。

文件比较
Source Insight 的内置文件比较窗口会在您编辑时更新。它并排显示两个文件的差异。您可以使用与备份文件比较快速将文件与旧版本进行比较。

目录比较
“目录比较”窗口与“文件比较”窗口一起工作以比较两个目录的内容。双击文件可显示该文件的差异。

代码美化器
使用适用于大括号语言(例如 C/C++ 和 C# 以及 Java)的内置代码美化器重新格式化您的源代码。

将项目源导出为 HTML
您可以使用此功能将所有文件导出为 HTML 版本,其中包含与 Source Insight 中看到的大部分相同语法格式。

它创建源代码项目的快照,可以使用网络浏览器查看该快照以进行在线浏览和参考。

代码片段
代码片段是常用源代码的小块,您可以将其插入到源文件中。代码片段也可以是特定于编程语言的,或者是所有语言通用的,或者是某些语言集通用的。

代码片段可以包含占位符变量,它们是插入代码片段时自动扩展的特殊标识符。例如,$date$是一个文本变量,将替换为当前日期。

片段面板
使用“代码片段”面板来组织代码片段,并快速编辑或插入代码片段。

项目定位
整个源目录树,甚至网络中的多个目录,都可以添加到 Source Insight 项目中。您可以快速指定文件名,而无需知道它位于哪个目录。当您的源代码管理程序更新项目中的文件时,Source Insight 会注意到并自动为您增量更新符号信息。

导入外部库和程序集
来自外部库或程序集的符号显示在自动完成列表中,并进行语法格式化。Source Insight 可以从外部库和程序集中导入符号声明。

快速访问所有符号和文件
借助 Source Insight,您可以像浏览网站一样浏览您的项目。您只需双击本地或全局符号,Source Insight 就会带您到达定义,或者弹出一个快速信息窗口。您可以单击某个符号,几秒钟之内即可获得项目中任何位置对该符号的所有引用的列表。符号浏览对话框允许您执行正则表达式搜索来定位符号。

书签
使用持久书签来记住函数或类中的关键位置。您可以使用“关系”窗口创建参考树并将其复制到书签以供将来使用。

备份文件管理
当您保存时,Source Insight 会自动维护源文件的备份。可以轻松打开备份版本,或将备份版本与当前版本进行比较。您可以控制备份的保留时间。

用于存储多个剪贴板和样板代码的剪辑窗口
您可以使用剪辑窗口轻松地重新排列代码并插入样板文本。剪辑窗口包含文本剪辑,您可以方便地在需要时将其放入源文件中。剪辑会在会话之间自动保存和维护。剪辑还记得它们来自什么功能或符号。

两阶段线路修正标记和选择性线路恢复
Source Insight 在已更改的行或已删除的行旁边的页边空白中显示行修订标记。这样可以轻松查看您在文件中所做的更改。您不仅可以看到所做更改的位置,还可以使用“恢复行”命令将其恢复为原始文本。恢复线路命令是可以撤消的。这为您提供了强大的无序撤消功能!

保存文件后,将保留每个文件的撤消和更改历史记录。保存文件时,行修订标记也会改变颜色。保存文件后,您仍然可以查看编辑过的行,并恢复它们或执行撤消操作。

高 DPI 显示支持
Source Insight 支持高 DPI 分辨率显示器。字体、用户界面按钮和图像缩放正确。

可定制的菜单和键盘
键盘、鼠标按钮和菜单都是完全可配置的。

支持远程终端服务器
Source Insight 会检测您何时在远程终端服务器或远程桌面会话中使用它,并缩减其显示密集型功能。您可以自定义远程会话选项。

专为大型项目设计
Source Insight 可以处理具有数百万行代码和数百万个声明符号的项目。

可扩展的文件类型和语言
您可以根据文件扩展名或通配符添加新文件类型。这允许针对不同类型的文件使用不同的编辑、显示和语言解析选项。

您还可以将自己的自定义语言添加到 Source Insight。自定义语言指定有限的语法规则、语法格式化关键字和简单的解析表达式。

崩溃恢复提供全时保护
Source Insight 将您的编辑更改增量且透明地保存到恢复文件中。如果计算机崩溃,Source Insight 可以恢复对文件所做的所有更改,即使您没有保存它们。这不是自动保存功能,它会中断您以便保存文件。只有您所做的更改才会存储在恢复文件中。Wing 脚本 API 的 Python 代码来添加新的 IDE 功能。您甚至可以使用 Wing 开发和调试扩展脚本。

以及更多
其他功能包括差异/合并工具、使用 Ruff、Black、YAPF 和 autopep8 重新格式化代码、缩进样式转换以及执行操作系统命令行。Wing 可在 Windows、macOS 和 Linux 上运行,还支持对 Raspberry Pi 和其他 ARM Linux 设备进行远程开发。

 
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。