RubyMine 2025.3 Help

RBS

RubyMine 支持 RBS 语言,用于描述 Ruby 程序中使用的类型。 RubyMine 识别 .rbs 文件,并提供以下编码辅助功能:

RBS 提供了一套内置的标准库类型签名。 当您在项目中使用 RBS 时,RubyMine 会在外部库中显示其来源。

RubyMine 还可以处理您的 rbs_collection.lock.yaml 文件。 在这种情况下,RubyMine 将确定哪些类型签名将被加载并用于代码洞察。 有关更多信息,请参阅 文档。

RBS 类型签名

RubyMine 支持 RBS 类型签名,并使用它们来确定 Ruby 元素的类型。 这有助于您在 Ruby 中开发代码时获得更好的代码洞察体验。

如果您的项目中有 RBS 文件,RubyMine 提供:

  • 更好的方法补全

    在调用代码补全时,RubyMine 会将适当类的方法显示在列表的开头。

    使用 RBS 的方法名称补全
  • Ruby 补全中的 RBS 额外声明

    当您的 Ruby 文件中缺少时,RubyMine 会识别来自 RBS 的额外声明。 这对于广泛使用反射的项目特别有益,因为它允许这些声明仍然出现在补全中。 该功能适用于类、模块、常量、方法和变量。

    来自 RBS 的额外声明
  • 改进的导航操作

    当您调用“跳转到声明”操作时,RubyMine 会将您导航到确切的声明,而不是提供一个声明列表供您选择。

  • 查找相应声明的用法

    通过 RBS 类型,RubyMine 可以找到 Ruby 元素的正确声明。 当您调用“重构”操作时,RubyMine 会立即找到相应声明的用法,而不是给您一个声明列表供选择。

    使用 RBS 查找用法
  • 一致的重命名重构

    当 RubyMine 使用 RBS 时,它只会建议重命名相关实体,而不是显示所有可能的选项。

    使用 RBS 重命名重构

查看类型信息

  • 提供 RBS 签名后,RubyMine 使用它们来确定 Ruby 元素的类型。 要查看元素类型,请将插入点放在所需的 Ruby 元素上,然后转到主菜单中的 视图 | 类型信息 Ctrl+Shift+P。

    正在查看类型信息

查看参数信息

RubyMine 使用 RBS 签名在 参数信息 弹窗中显示方法参数的类型。 默认情况下,当您在编辑器中键入左括号或从建议列表中选择方法时,RubyMine 会自动显示弹窗。

  • 要显式调用 参数信息 弹窗,请转到主菜单中的 视图 | 形参信息 Ctrl+P。

    查看参数信息

检查类型是否匹配

  • 当您尝试使用与 RBS 文件中的类型不一致的类型时,RubyMine 会发出警告。

    不兼容的参数类型

    您可以使用 类型不匹配 检查 来管理这些警告。 检查适用于:

    • 常量赋值

    • 实例变量和类变量的赋值(包括单例类/方法中的实例变量)

    • 方法和块中的参数赋值

    • 方法和块的返回值

    • 方法和 yield 调用中的参数

查看快速文档

您可以使用 快速文档 获取有关使用中的 RBS 签名的信息。

  1. 在编辑器中将鼠标悬停在所需符号上。

  2. 将文本光标放在符号处并按 Ctrl+Q 或从主菜单中选择 查看 | 快速文档。

    再次按下 Ctrl+Q 键,以在 文档 工具窗口中打开此文档。

  3. 请在弹出窗口中点击 显示选项菜单图标 更改字体大小、显示快速文档工具栏或转到源代码。

RBS 集合

RubyMine 具有与 RBS 集合 的内置集成,这是一个由社区管理的 RBS 文件集合,适用于不包含自身类型签名的 gem。 通过此集成,即使您未显式使用 RBS,也可以从项目依赖项的类型签名中受益。 RubyMine 在后台无缝下载这些类型签名,从而改进项目中所有 gem 的类型支持和代码洞察。

您可以在 外部库 节点下的 rbs_collection [bundled] 中找到下载的类型签名。

该功能默认启用,并要求您的项目解释器中安装版本为 3.2 或更高的 RBS gem。 虽然 Ruby 3.4 附带兼容版本,但如果您的解释器使用的是较早的 RBS 版本或未安装该 gem,RubyMine 将显示通知,提示安装最新版本。

从通知中安装 RBS

创建一个 RBS 文件

  1. 在项目视图 Alt+1 中,选择您想要创建新 RBS 文件的目录。

  2. 按 Alt+Insert 并从弹窗中选择 RBS 文件/类。

    创建一个新的 RBS 文件

    作为另一种选择,从主菜单中选择 文件 | 新建 | RBS 文件/类。

  3. 请指定文件名并按 Enter。

生成一个 RBS 原型

RubyMine 提供了一种工具,可以从您的 Ruby 代码生成简单的 签名原型。 这些原型可能有助于了解如何开始向项目中添加新的 RBS 类型。

  1. 打开一个您想要为其生成类型签名的 Ruby 文件。

  2. 在主菜单中,前往 代码 | 生成 Alt+Insert。

  3. 在 生成 弹窗中选择 类型签名。

    生成一个 RBS 原型

    RubyMine 将生成一个与您的 Ruby 文件同名的新 RBS 文件。 生成的原型中包含的所有类型都被指定为 untyped。 您可以将它们用作编写类型签名的模板。

使用快速修复添加缺失的类型签名

您始终可以使用“缺失类型签名”检查的快速修复来添加缺失的类型签名。 RubyMine 将导航到现有的 RBS 文件,或者在必要时创建一个新的 RBS 文件,并生成相应的签名模板。

  1. 将插入点放在缺少类型签名的 Ruby 符号上。

  2. 按 Alt+Enter 或单击问题行上的 意向操作按钮 图标。

    添加缺失的类型签名
  3. 从菜单中选择 添加类型签名 修复。

  4. 在打开的 RBS 文件中,更新类型签名。

编辑类型签名

RubyMine 允许您使用专用的意图操作或“类型不匹配”检查的快速修复,从 Ruby 文件中编辑类型签名。

  1. 将插入点放在您想要编辑类型签名的 Ruby 符号上。

  2. 按 Alt+Enter 并从菜单中选择 编辑类型签名。

    使用意图编辑类型签名
    使用快速修复编辑类型签名
  3. 在打开的 RBS 文件中,更新类型签名。

查看 RBS 文件的结构

您可以使用 结构 工具窗口 Alt+7 检查 RBS 文件的高级结构。

结构工具窗口

在 Ruby 和 RBS 文件之间导航

RubyMine 使您能够从 Ruby 声明导航到其类型签名,反之亦然。 导航功能适用于:

  • 属性(目前仅支持从 RBS 导航到 Ruby)

  • 类、模块和常量

  • 类变量和实例变量

  • 全局变量

  • 方法(包括 singleton)

转到类型签名

  • 选择一个 Ruby 声明并转到 导航 | 类型签名 以导航到其类型签名。

    在 Ruby 声明及其类型签名之间导航

转到关联的 Ruby 声明

  • 选择一个类型签名并转到 导航 | 关联的声明 以导航到关联的 Ruby 声明。

    在 RBS 签名和关联的 Ruby 声明之间导航

使用意图操作导航

  1. 将插入点放在所需元素上并按 Alt+Enter。

  2. 从列表中选择操作以导航到所需的类型签名或关联的声明。 按 Enter 应用意图操作。

    使用意图操作导航

导航到相关的 Ruby 或 RBS 元素

  1. 将插入点放在所需元素上,然后转到主菜单中的 导航 | 相关符号 Ctrl+Alt+Home。

  2. 如果需要,从弹窗中选择所需的目标。

    导航到相关的 Ruby 元素

使用 Steep 检查 Ruby 类型

RubyMine 支持使用 运行任意内容 执行 Steep 命令。 在使用 Steep 之前,请确保将 steep gem 添加到您的 Gemfile 。

gem 'steep'

在 安装 Steep 后,您需要为项目生成一个 Steepfile 。

生成并配置 Steepfile

  1. 按两次 Ctrl。

  2. 在搜索字段中开始输入 steep init。 从建议列表中选择命令并按 Enter。 RubyMine 将为您的项目生成一个 Steepfile 。

  3. 打开并编辑生成的 Steepfile 。 例如:

    target :lib do check "lib" signature "sig" library "set", "pathname" end

运行类型检查

  1. 按两次 Ctrl。

  2. 在搜索字段中开始输入 steep check。 从建议列表中选择命令并按 Enter。

    RubyMine 将在 运行 工具窗口中显示命令输出。

    在运行工具窗口中显示命令输出

配置代码样式设置

RubyMine 对 Ruby 和 RBS 使用相同的代码样式设置。 要自定义 RBS 的 代码样式:

  1. 在 设置 对话框 (Ctrl+Alt+S) 中,前往 编辑器 | 代码样式 | Ruby。

  2. 配置所需的代码样式设置。

配置语法高亮

RubyMine 使用 Ruby 配色方案来高亮显示 RBS 文件中的语法。

您可以根据自己的偏好和习惯配置支持 RBS 的语法高亮。

  1. 在 设置 对话框 (Ctrl+Alt+S) 中,前往 编辑器 | 配色方案 | Ruby。

  2. 选择颜色方案,接受从默认设置继承的高亮设置,或按照 颜色和字体 中的描述自定义它们。

最后修改日期: 2025年 12月 5日