4

可能重复:
Ruby - UTF-8 文件编码

我一直在使用 UTF-8,并希望帮助 ruby​​ 解释器读取我的文件。因此,我# encoding=utf-8在我的 ruby​​ 代码的开头放了这样的:

#!/usr/bin/env ruby
# encoding=utf-8

但时不时地,我会看到其他变体: bundle gem NAME插入# -*- encoding: utf-8 -*-(进入 NAME.gemspec)。gem magic_encoding 也使用了这一行。

推荐的方法是什么?

  • # encoding = utf-8
  • # encoding: utf-8
  • # -*- encoding: utf-8 -*-
4

3 回答 3

6

简短的回答:

# encoding: utf-8

这是一个完整的答案: Ruby - UTF-8 file encoding

于 2012-11-07T15:46:58.937 回答
3

对于可接受的内容,它看起来像是一个相当宽松的规范。我一直用:

# encoding: UTF-8

也可以接受的是coding。我找不到关于允许的变体的参考,但只要您的文件被正确解释,它应该没问题。检查该__ENCODING__值以确保它被拾取。

于 2012-11-07T15:45:53.167 回答
3

Python 的行为方式相同,这个 Python 问题的答案表明没有真正的建议,只需选择适合您的编辑器的方法:对于 Emacs,使用# -*- encoding: utf-8 -*-; 供 VIM 使用# vim:fileencoding=<encoding-name>

于 2012-11-07T16:15:22.443 回答