>> I have a lot of problems with string encodings in ruby 1.9. I always get
>> EncodingErrors because ruby mixes the default encodings. I have set LANG
>> and LC_ALL to a utf locale.
>>
>> test.rb
>> -------
>>
>> def encoding_sucks_hard(string)
>>   "hello " + string
>> end
>>
>> And then
>> --------
>>
>> irb(main):001:0> require 'test'
>> => true
>> irb(main):002:0> 'test'.encoding
>> => #<Encoding:UTF-8>
>> irb(main):003:0> encoding_sucks_hard('test').encoding
>> => #<Encoding:US-ASCII>
>> irb(main):004:0>
>>
>> How can I set the default encoding?
>>
>> Daniel
> 
> Perhaps use the magic comment?
> 
> $ irb
> irb(main):001:0> a = "foobar"
> => "foobar"
> irb(main):002:0> a.encoding
> => #<Encoding:UTF-8>
> irb(main):003:0>
> 
> $ irb
> irb(main):001:0> #encoding: ASCII-8BIT
> irb(main):002:0* a = "foobar"
> => "foobar"
> irb(main):003:0> a.encoding
> => #<Encoding:ASCII-8BIT>
> irb(main):004:0> quit

But what is with libraries? I can't set their magic comments. The string
literals in the library are therefore incompatible to my string literals.

Daniel