9

我在 OSX 10.9.1 上使用 ST2。我htmlbeautifier安装了 gem 。我BeautifyRuby使用Package Control. 我ruby在默认设置中设置了路径和文件模式,BeautifyRuby如下所示:

{
"tab_or_space": "space",
"ruby": "/Users/(username)/.rvm/rubies/ruby-2.1.0/bin/ruby",
"file_patterns": ["\\.html\\.erb", "\\.rb", "\\.rake", "Rakefile", "Gemfile"],
"html_erb_patterns": ["\\.html\\.erb"],
"run_on_save": true,
"save_on_beautify": false
}

对我来说BeautifyRuby,仅适用于带有扩展名.rb的文件,而不适用于带有扩展名的文件.erb

当我尝试美化.erb文件时,出现以下错误:

"error: invalid output. check your ruby interpreter settings"

我还尝试了直接从 git 手动安装 BeautifyRuby 的方法。仍然给我同样的结果。

4

4 回答 4

12

如果使用 rvm:

1- 在你的 BeautifyRuby.sublime-settings

"ruby": "/Users/(user)/.rvm/rubies/ruby-(version)/bin/ruby"

2- 在全局 gemset 中安装 htmlbeautifie。

rvm use (version)@global     
gem install htmlbeautifier

这会解决你的问题..

于 2014-05-09T01:34:17.090 回答
1

我遇到了同样的问题,我可以通过安装旧版本的 htmlbeautifier gem 来解决这个问题:

gem uninstall htmlbeautifier
gem install htmlbeautifier -v 0.0.12

似乎最新版本的 htmlbeautifier 与 BeautifyRuby 不兼容。

于 2015-01-20T19:33:26.570 回答
1

我假设您正在使用 RVM。如果您添加了新的 ruby​​ 版本并更改了 RVM ruby​​ deault,它将破坏 sublime BeautifyRuby 包,因为您的默认 ruby​​ 现在与 BeautifyRuby 设置中引用的不同。

首先删除 BeautifyRuby。关闭 sublime 并重新打开它,然后重新添加包。

其次,在您的 rails/ruby 项目文件夹中,运行which ruby并记下路径。

三、打开preferences > package settings > beautify ruby > settings default并添加以下内容:

{
...
"ruby":"path_printed_in_which_ruby_command",
...
}
于 2014-10-26T21:03:03.673 回答
0

我看到这个问题已经存在几个月了,但我遇到了同样的问题,并且有一个对我有用的解决方案,我认为值得分享。在崇高文本 3 中,在 Preferences | 包装设置 | 美化红宝石 | 设置 - 默认值,file_patterns 值被轻微损坏,将 .html 和 .erb 文件类型合并在一起,从而破坏了它们的功能。

我发现了什么:

  "file_patterns": ["\\.html\\.erb", "\\.rb", "\\.rake", "Rakefile", "Gemfile"],

我将其更改为:

"file_patterns": ["\\.html", "\\.erb", "\\.rb", "\\.rake", "Rakefile", "Gemfile"],

这似乎对我有用。此外,如上所述,您需要确保将“ruby”的设置设置为您当前的 ruby​​ 版本。在命令行中运行 'which ruby​​' 以获取机器上 ruby​​ 的当前路径,并将该值用于您的 ruby​​ 设置。就我而言,它是:

"ruby": "/Users/bob/.rvm/rubies/ruby-2.1.2/bin/ruby",

(注意末尾有一个逗号,因为它不是文件中的最后一个配置)。

于 2014-06-13T12:58:42.083 回答