Make Ruby 1.9 considera que todos los archivos fuente tienen codificación UTF-8. (Incluso si es necesario volver a compilar el intérprete)

Quiero portar una aplicación de rieles de Ruby 1.8.7 a 1.9.2. Algunos de los archivos contienen diéresis como ä / ö / ü tanto en cadenas como en comentarios. Los archivos se guardaron como UTF-8 pero sin una BOM (marca de orden de bytes) al principio.

Como ustedes sabrán,Ruby 1.9 se niega a analizar estos archivos, dando uninvalid multibyte char (US-ASCII)

Estaba buscando en Google y leyendo mucho, pero la única solución para esto parece ser

inserte una lista de materiales o inserción# coding: utf-8

al comienzo decad archivo

Mi editor de elección (gEdit) no parece insertar una lista de materiales. También leí que tener una lista de materiales es una mala práctica porque puede romper algunos editores, también rompe los scripts de shell si desea usar la notación shebang.

EDITA: La lista de materiales rompe el analizador Ruby 1.8.7, dando unsyntax error, unexpected kEND, expecting $end (SyntaxError) para el archivo!

Intenté forzar la codificación externa con ruby -Eutf-8: utf-8 pero esto parece ignorarse al llamar a rake (intenté: /home/malte/.rvm/gems/ruby-1.9.2-p180/bin/ prueba de rastrillo).

Entonces mi pregunta es:

Como RVM está construyendo ruby 1.9 desde la fuente de todos modos, hay una opción de compilación o un parche para cambiar la codificación predeterminada de US-ASCII a UTF-8?

He echado un vistazo rápido al código fuente, pero no pude encontrar la línea donde se establece el valor predeterminado (no soy un experto en C, difícil).

Respuestas a la pregunta(1)

Su respuesta a la pregunta