¿Por qué obtengo un Encoding :: CompatibilityError con #inspect?
El siguiente código funciona sin problema:
#encoding: utf-8
class Text
def initialize(txt)
@txt = txt
end
def inspect
"<Text: %s>" % @txt
end
end
p Text.new('Hello World')
Pero si lo intentop Text.new('Hä, was soll das?')
Me sale un codificador :: CompatibilityError:
inspect_with_umlaut.rb:26:in `p': inspected result must be ASCII only or use the default external encoding (Encoding::CompatibilityError)
from inspect_with_umlaut.rb:26:in `<main>'
¿Por qué esto?
Y más importante: ¿cómo puedo evitarlo?