Warum erhalte ich einen Encoding :: CompatibilityError mit #inspect?
Der folgende Code funktioniert problemlos:
#encoding: utf-8
class Text
def initialize(txt)
@txt = txt
end
def inspect
"<Text: %s>" % @txt
end
end
p Text.new('Hello World')
Aber wenn ich es versuchep Text.new('Hä, was soll das?')
Ich erhalte einen Encoding :: 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>'
Warum das
Und noch wichtiger: Wie kann ich das vermeiden?