2011-06-22 13 views
35

Todos conocemos la "mágica"Ruby - UTF-8 codificación de archivos

# encoding: utf-8 

línea. Pero he visto varias otras notaciones alternativas, algunas de ellas bastante salvajes. ¿Conoces o usas alguno de esos? ¿Hay alguna regla más general de lo que es aceptable?

Editar: Ok, al parecer no son exactamente 3 maneras:

# encoding: UTF-8 

# coding: UTF-8 

# -*- coding: UTF-8 -*- 

(más en http://blog.grayproductions.net/articles/ruby_19s_three_default_encodings)

+1

Ejemplos de estas notaciones alternativas ayudarían a su pregunta. – Phrogz

Respuesta

107

No, no son "exactamente 3 maneras" para especificar el 'comentario' magia - Hay un número infinito de ellos. Cualquier comentario sobre la primera línea que contiene coding: funcionará, según JEG2:

... la mejor forma de establecer la codificación de fuente ... se llama un comentario magia. Si la primera línea de su código es un comentario que incluye la palabra codificación, seguido de dos puntos y espacio, y luego un nombre de codificación, la codificación de origen para ese archivo se cambia a la codificación indicada.

Por lo tanto, cualquiera de ellos debería funcionar:

# coding: UTF-8 
# encoding: UTF-8 
# zencoding: UTF-8 
# vocoding: UTF-8 
# fun coding: UTF-8 
# decoding: UTF-8 
# 863280148705622662 coding: UTF-8 0072364213 
# It was the night before Christmas and all through the house, not a creature was coding: UTF-8, not even with a mouse. 
+34

+1 para la última :) –

+0

Gracias por citar tu respuesta y aclarar las cosas mágicas para mí. Además, solo fyi: probé el enlace JEG2 pero estaba abajo a la hora de este comentario. ¡Aclamaciones! – mkelley33

+2

@ mkelley33 Esperamos que el enlace vuelva a funcionar pronto. Por ahora: http://web.archive.org/web/20120905065913/http://blog.grayproductions.net/articles/ruby_19s_three_default_encodings –

Cuestiones relacionadas