在Rails 3中解决无效多字节字符(US-ASCII)的全局设置

Ant*_*nAL 9 configuration character-encoding ruby-on-rails-3

我的问题是与Rails 3无效的多字节字符(US-ASCII)相似

解决方案,在那里提供确实有效,但我发现这有点愚蠢,包括注释#编码:UTF-8到每个使用非ASCII字符的文件.

在config/application.rb中,我有以下选项:

# Configure the default encoding used in templates for Ruby 1.9.
config.encoding = "utf-8"
Run Code Online (Sandbox Code Playgroud)

但是,它没有帮助.

也许,针对此类情况提供了一些其他全局配置选项?

sma*_*thy 2

没有办法让 Ruby 1.9 默认对所有源文件使用 UTF-8(是的,这是一个巨大的 PITA)。

config.encoding设置告诉 Rails 一些事情,与 Ruby 无关。

我想出的最佳解决方案依赖于我没有看到提到的东西。还有另一种方法可以让 Ruby 1.9 将文件视为 UTF-8,而不是使用那个神奇的注释,您可以在文件中包含 UTF-8 BOM(字节顺序标记) 。Ruby 1.9 会做正确的事情。

现在到了最酷的部分 - 我使用 gvim,配置 gvim 将 BOM 放入每个应该有的文件中实际上非常简单。就像将其添加到我的中一样简单.vimrc

set bomb
Run Code Online (Sandbox Code Playgroud)

不确定您是否使用 gvim,或者其他编辑器是否可以做到这一点。很明显 YMMV :)