【发布时间】:2019-12-17 17:12:35
【问题描述】:
这看起来应该很容易。
我正在创建一个 CLI 命令 gem,因此该命令位于 bin/gem_name 中,它没有 .rb 扩展名。当我尝试在 RubyMine 中编辑该文件时,它没有为它提供语言模式(抱歉,不知道正确的术语)来使语法突出显示和 RubyMine 中的其他漂亮功能起作用。
我如何告诉 RubyMine 这实际上是一个 Ruby 文件?
【问题讨论】:
标签: rubymine
这看起来应该很容易。
我正在创建一个 CLI 命令 gem,因此该命令位于 bin/gem_name 中,它没有 .rb 扩展名。当我尝试在 RubyMine 中编辑该文件时,它没有为它提供语言模式(抱歉,不知道正确的术语)来使语法突出显示和 RubyMine 中的其他漂亮功能起作用。
我如何告诉 RubyMine 这实际上是一个 Ruby 文件?
【问题讨论】:
标签: rubymine
有几种方法可以告诉 RubyMine 文件属于特定类型:
命令文件以 RubyMine 识别为 Ruby 的 hashbang 行开头。我不知道它到底能识别什么,但是 gems 放入我的 bin 目录的所有脚本都以
开头#!/usr/bin/env ruby
当我创建一个以该行开头的新脚本时,RubyMine 也将其识别为 Ruby(甚至在我打开它之前)。我确实注意到,当我有一个没有此行的文件然后添加它时,我必须退出并重新启动 RubyMine 才能使其生效。
只需在 RubyMine 中打开文件。当我打开一个 RubyMine 无法识别的文件时,它会询问我它是什么类型并记住我告诉它的内容。
手动注册文件:
gem_name 匹配的新模式
必须对大量文件执行此操作会很痛苦,但在某些情况下它可能有用。
我很惊讶方法 2 已经不适合你了。也许您告诉 RubyMine 该文件是一个文本文件。检查文件类型首选项中的文本文件类型,以确保您的文件未注册为文本。
【讨论】:
bundle gem NAME 创建了 gem,所以它没有从上面的 #2 中选择类型是相当令人惊讶的。
在项目视图中右键单击文件名。
选择“与文件类型关联...”
选择“红宝石”
【讨论】: