IRB 具有用于设置外部编码的 -E 标志,但它在 pry 中不起作用:
/usr/local/lib/ruby/gems/1.9.1/gems/pry-0.9.10/lib/pry/repl_file_loader.rb:16:in `initialize':没有这样的文件:/Volumes/fb1 store/fb1 10.5用户/用户/rashid/Ruby_Dev/MDBlib/src/MDB/-Eutf-8 (RuntimeError)
有什么建议么?
放~/.pryrc
$stdout.set_encoding 'US-ASCII'
指定您的默认外部编码
并~/.pryrc
添加 pry 命令以set_encoding
动态更改 external_encoding。
Pry::Commands.create_command "set_encoding" do
description "Set $stdout.external_encoding to ARGS[0] || 'US-ASCII'"
def process
output.set_encoding args[0] || 'UTF-8'
end
end
用它作为
[1] pry(main)> set_encoding UTF-8
或将其设置回 US-ASCII
[1] pry(main)> set_encoding
这有点像黑客,但我认为这对你有用:
$ pry -e "#encoding: utf-8"