如何为pry设置外部编码

时间:2012-11-07 15:35:56

标签: ruby irb pry

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   user / Users / rashid / Ruby_Dev / MDBlib / src / MDB / -Eutf-8(RuntimeError)

有什么建议吗?

2 个答案:

答案 0 :(得分:0)

这有点像黑客,但我认为这对你有用:

$ pry -e "#encoding: utf-8"

答案 1 :(得分:0)

付诸~/.pryrc

$stdout.set_encoding 'US-ASCII'

指定默认的外部编码

AND ~/.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