RubyMine 2021.2 最新变化

用于处理 Ruby 和 RBS 的新功能、更好的代码补全、搜索与重构、编辑器改进、VCS 支持、Space、Code With Me 等。

Ruby 与 RBS

更智能的搜索与重构

更智能的搜索与重构

现在,Go to declarationFind usages 以及 Rename 重构均可更加精确地用于使用 RBS 的项目。 RubyMine 依赖于 .rbs 声明来定义项目实体的相互关联方式,而不会显示所有潜在用法。

在 Ruby 和 RBS 之间导航

在 Ruby 和 RBS 之间导航

现在,您可以使用新的导航操作在相应的 .rb.rbs 文件之间导航。 右键点击诸如类或方法的项目实体,然后选择 Go to / Type Signature | Associated Declaration。 您还可以使用 Ctrl+Alt+Home 快捷键。

改进的 Ruby 代码辅助

改进了 Ruby 代码辅助

RubyMine 使用 RBS 签名来确定 Ruby 元素的类型并提供更具相关性的代码补全。 RubyMine 现已支持大多数现有 RBS 实体,包括类型变量、块参数、元组类型、过程类型等。

对于没有相关 RBS 类型签名的代码部分,RubyMine 仍将使用自有的类型推断。

新检查

新检查

由于支持访问 .rbs 文件中存储的信息,RubyMine 能够检查 Ruby 代码中的更多潜在错误。 如果 RBS 与 Ruby 代码存在不匹配情况,RubyMine 将显示类型错误。 此版本还为 .rbs 文件本身添加了新的检查,包括不正确的代码和未解析的引用。 RubyMine 还支持使用 Run anything 运行 Steep 命令。

改进的 RBS 编辑

改进了 RBS 编辑

此版本具有能够使 RBS 代码更易于阅读的所有基本功能:语法高亮显示、格式设置、自动缩进、代码折叠、结构视图以及使用 Ctrl+/ 快捷键进行注释。

RBS 文件的代码辅助

RBS 文件的代码辅助

现在,RubyMine 为处理 RBS 文件提供了代码辅助:代码补全、搜索用法、代码导航、Rename 重构等。 您还可以为 RBS 创建 .rbs 原型以及您自己的实时模板

编辑器

更新的检查和快速修复描述

更新了检查和快速修复描述

我们更新了 RubyMine 可执行的所有检查和快速修复的说明。 更新后的描述解释了检查所建议的更改及其原因。 一些检查带有用法示例。

保存时的操作

保存时的操作

RubyMine 现已支持在保存更改时执行特定操作,例如重新设置代码格式。 您可以在 Preferences / Settings | Tools | Actions on Save 下找到保存时将触发的所有操作。

了解更多

快速创建临时文件

快速创建临时文件

在临时文件中,您可以在项目上下文之外添加注释或起草代码。 从此版本开始,您可以选择一些代码,按 Alt+Enter 键,然后选择 Create new scratch file from the selection 来快速创建包含该代码的新临时文件。

用户体验

Local History 修订中的文本搜索

Local History 修订中的文本搜索

Local History 可帮助您以独立于版本控制的方式持续跟踪对项目所做的所有更改。 在此版本中,我们为 Local History 添加了搜索功能。 现在,如果您记得要查找的更改中的一些关键字,就可以更轻松地找到相应内容。

多重版权年份

多重版权年份

现在,您可以在项目的版权声明中同时包含项目创建年份和当前版本年份。 Preferences/Settings | Editor | Copyright | Copyright profile 中提供了包含两项日期的更新模板。

Advanced Settings

高级设置

我们向 Preferences | Settings – Advanced Settings 添加了新的节点。 它包含了一些适用于特定用例的选项,并按 IDE 工具方便地进行了分组。 例如,与项目视图、启动、终端等相关的设置。

保存时重新加载浏览器页面

保存时重新加载浏览器页面

当您保存对相应 HTML、CSS 和 JavaScript 文件所做的更改时,浏览器现已能够自动重新加载页面

以拖放方式组织工具窗口

以拖放方式组织工具窗口

您现在可以将工具窗口拖放到主 IDE 窗口的所需位置或单独的窗口中。

Preferences/Settings 中的新导航选项

Preferences/Settings 中的新导航选项

现在,用户可以在 Preferences/Settings 中打开的部分之间来回导航。 为此,请使用窗口右上角的箭头。

调试器

调试器中的预览标签页

调试器中的预览标签页

预览标签页现在适用于在调试期间打开的文件:这些文件将在单个预览标签页中逐一显示。 要启用此功能,请在 Preferences/Settings | Editor | General | Editor Tabs | Opening Policy 中选中 Enable preview tab 复选框。

终端

新的终端选项

新的终端选项

我们通过两个新增选项对我们的内置终端进行了改进:支持选择光标形状以及支持 Use Option as Meta key。 二者均位于 Preferences/ Settings | Tools | Terminal 下。

版本控制

提交前检查的更改

提交前检查的更改

我们添加了您在提交前可执行的新操作:Run TestsAnalyze codeCleanup。 所有提交前检查的进度和结果均在 Commit 区域内显示,而不会以其他模态窗口的形式对您造成干扰。

了解更多

GPG 签名

GPG 签名

您现在可以使用 GPG 密钥签署您的提交以对其提供保护。 您可以通过 Preferences / Settings | Version Control | Git 来启用此功能。 If it’s your first time using a GPG key, you’ll need to configure it. 要使用现有的预配置 GPG 密钥,您可以从下拉菜单列表中进行选择。

Show Diff 操作的行为得到统一

Show Diff 操作的行为得到统一

现在,RubyMine 会在编辑器中显示初始文件与更改后的文件之间的差异。 无论您如何调用 Show Diff 操作,IDE 默认都会在编辑器中打开差异。 如果您更喜欢在单独的窗口中跟踪更改,则可以从编辑器中拖动所需的文件。 这样操作后,IDE 会记住您的偏好,并将在单独的窗口中打开后续差异。

Space

Git 日志中的 Space 作业状态

Git 日志中的 Space 作业状态

为使您只需查看提交列表即可快速跟踪作业进度,我们在 Git 工具窗口的 Log 标签页中添加了 Space 作业状态图标。 点击图标可打开包含该作业自动化信息的弹出窗口。

要打开和关闭此状态信息,请点击 Log 中的眼睛图标,然后选择 Show Columns | Space Automation

在评论中提及团队成员

在评论中提及团队成员

现在,您可以直接在 RubyMine 中通过 Space 评论快速提及您的队友,使其了解相关情况。 在时间线或代码注释中键入 @,后跟人员姓名,然后从列表中进行选择。

在代码审查中显示分支

在代码审查中显示分支

现在,用户可以查看与所选代码审查相关的分支。 Details 标签页现在会显示一个分支列表,其中包含在处理当前问题时所做的提交。

Code With Me

同步式代码补全

同步式代码补全

使用 Code With Me 时,您可能会想要解释某些问题或向您的团队成员展示项目的不同部分。 您可以通过 Force Others to Follow You 模式来实现此功能。 关注您的人能够看到您所使用的代码补全建议。

Web 和框架

require() 自动导入

require() 自动导入

您知道您的 IDE 可以在您补全 ES6 符号时添加缺少的 import 语句吗? 现在,它可以对 CommonJS 模块实现相同功能 – 支持在代码补全时插入 require 导入。

React useState hook 的 Rename 重构

React useState hook 的 Rename 重构

您将不再需要浪费时间在 React hook 中逐一重构 useState 值和函数 – RubyMine 现在可以为您执行重命名。 要尝试此功能,请将文本光标置于状态值上并使用 Shift+F6 键调用 Rename 重构,或转到右键点击上下文菜单中的 Refactor | Rename

其他改进

  • 在 macOS 上启用屏幕阅读器模式时编码更加方便。 现在可以大声朗读代码补全的可用建议列表。 我们还对所选组合框的内容以及组合框列表提供了语音朗读。 现在可以正常朗读 Search Everywhere 操作结果。
  • 代码分析可以正常工作,在文件系统刷新运行时高亮显示不会再出现暂停问题。
  • 除了使用本地 Ruby 解释器之外,RubyMine 现在还支持对使用 SSH 和 Vagrant 的项目运行覆盖率测试
  • RubyMine 将自动清理距上次更新已超过 180 天的所有缓存和日志目录。 此过程不会影响系统设置和插件目录。 您可以通过 Help | Delete Leftover IDE Directories 手动启动该过程。
  • 现在,JetBrains Toolbox App 不会让您错过任何重要产品更新。 RubyMine 会通知您是否有新版本可供下载并主动询问是否升级。 为此,您需要安装 JetBrains Toolbox App 1.20.8804 或更高版本。
  • 我们将继续致力于提高 UI 响应能力并减少意外冻结问题。 例如,我们已将某些需要索引的操作移出 UI 线程,这有助于避免其他情况中的冻结问题。
  • 我们制作了使您能够更直观地更改项目图标的对话框。
  • 从此版本开始,您可以体验到 RubyMine 完全本地化的中文韩语日语 UI。 本地化以非捆绑式语言包插件提供,可以轻松安装到您的 IDE
  • Default Changelists 是存储所有未提交更改的节点的曾用名。 在 v2021.2 中,我们已将其重命名Changes 以使其更加精确且易读。 此更新将影响您的所有新项目。
  • RubyMine 将不再为 Git 操作自动添加更改列表。 例如,优选不会触发创建更改列表。
  • 现在,您的 IDE 支持的最旧的 Git 版本为 v2.17。 我们提高了支持的最低版本,因为 2.17 是能接收安全更新的最旧版本。
  • Code With Me 最近推出了两个新的中继服务器:一个位于美国西海岸,另一个位于南非。 这使 ping 的速度提高了近三倍,并允许来自这些地点的团队以即时响应的速度在 JetBrains IDE 中进行协作。
  • 您现在可以快速打开 Power Save Mode,以帮助延长笔记本电脑的电池续航时间。 只需右键点击状态栏并从上下文菜单中选择 Power Save Mode 即可。
  • 代码补全现在也适用于私有 npm 软件包。
  • RubyMine 现已充分支持 .js 文件中 JSDoc 注释内使用的 TypeScript 语法。
  • RubyMine 现已支持热门的 classnamesclsx 库,帮助您更高效地处理 CSS 类名。
  • RubyMine 现在将自动补全 Tailwind CSS 组件中的类名和动态评估的 className 特性值。