la consola de rieles no funciona

Estoy usando rails versión 3.0.3 y ruby ​​versión 1.9.2p136 (2010-12-15) en Windows Vista. La consola de secuencias de comandos me da el siguiente error:

Cargando entorno de desarrollo (Rails 3.0.3) C: /privat/Ruby192/lib/ruby/site_ruby/1.9.1/rbreadline.rb: 2116: en block in _rl_read_init_file': invalid byte sequence in UTF 8 (ArgumentError) from C:/privat/Ruby192/lib/ruby/site_ruby/1.9.1/rbreadline.rb:2114:ineach_line 'de C: /privat/Ruby192/lib/ruby/site_ruby/1.9.1/rbreadline.rb: 2114: en _rl_read_init_file' from C:/privat/Ruby192/lib/ruby/site_ruby/1.9.1/rbreadline.rb:2080:inrl_read_init_file 'de C: /privat/Ruby192/lib/ruby/site_ruby/1.9.1/rbreadline.rb: 2500: en readline_initialize_everything' from C:/privat/Ruby192/lib/ruby/site_ruby/1.9.1/rbreadline.rb:3726:inrl_initialize 'de C: /privat/Ruby192/lib/ruby/site_ruby/1.9.1/rbreadline.rb: 4720: en readline' from C:/privat/Ruby192/lib/ruby/site_ruby/1.9.1/readline.rb:40:inreadline 'de C: /privat/Ruby192/lib/ruby/1.9.1/irb/input-method.rb: 115: in gets' from C:/privat/Ruby192/lib/ruby/1.9.1/irb.rb:139:inblock (2 niveles) en eval_input 'de C: /privat/Ruby192/lib/ruby/1.9.1/irb.rb: 273: in signal_status' from C:/privat/Ruby192/lib/ruby/1.9.1/irb.rb:138:inbloquear en eval_input 'de C: /privat/Ruby192/lib/ruby/1.9.1/irb/ruby-lex.rb: 188: en call' from C:/privat/Ruby192/lib/ruby/1.9.1/irb/ruby-lex.rb:188:inbuf_input 'de C: /privat/Ruby192/lib/ruby/1.9.1/irb/ruby-lex.rb: 103: en getc' from C:/privat/Ruby192/lib/ruby/1.9.1/irb/slex.rb:205:inmatch_io 'de C: /privat/Ruby192/lib/ruby/1.9.1/irb/slex.rb: 75: in match' from C:/privat/Ruby192/lib/ruby/1.9.1/irb/ruby-lex.rb:286:intoken 'de C: /privat/Ruby192/lib/ruby/1.9.1/irb/ruby-lex.rb: 262: in lex' from C:/privat/Ruby192/lib/ruby/1.9.1/irb/ruby-lex.rb:233:inblock (2 niveles) en each_top_level_statement 'de C: /privat/Ruby192/lib/ruby/1.9.1/irb/ruby-lex.rb: 229: in loop' from C:/privat/Ruby192/lib/ruby/1.9.1/irb/ruby-lex.rb:229:inblock in each_top_level_statement 'de C: /privat/Ruby192/lib/ruby/1.9.1/irb/ruby-lex.rb: 228: in catch' from C:/privat/Ruby192/lib/ruby/1.9.1/irb/ruby-lex.rb:228:ineach_top_level_statement 'de C: /privat/Ruby192/lib/ruby/1.9.1/irb.rb: 155: en eval_input' from C:/privat/Ruby192/lib/ruby/1.9.1/irb.rb:70:inblock in start 'desde C: /privat/Ruby192/lib/ruby/1.9.1/irb.rb: 69: in catch' from C:/privat/Ruby192/lib/ruby/1.9.1/irb.rb:69:instart 'desde C: /privat/Ruby192/lib/ruby/gems/1.9.1/gems/railties-3.0.3/lib/rails/commands/console.rb: 44: in start' from C:/privat/Ruby192/lib/ruby/gems/1.9.1/gems/railties-3.0.3/lib/rails/commands/console.rb:8:instart 'desde C: /privat/Ruby192/lib/ruby/gems/1.9.1/gems/railties-3.0.3/lib/rails/commands.rb: 23: in <top (required)>' from script/rails:6:inrequire 'de script / rails: 6: en' '

¿Qué puedo hacer?

preguntado el 08 de enero de 11 a las 19:01

¿Qué tienes en 'script / rails'? -

Intentaste ejecutar rails console? Así es como iniciar la consola en Rails3 (es decir, ya no usa script comandos). -

Sí, el comando que utilicé es "consola de rieles". -

3 Respuestas

El problema es que Ruby1.9.2 tiene algunos problemas con la codificación ... Tienes que comprobar si el controlador de tu base de datos no da error ... ¿Funciona tu servidor? Te recomiendo que uses Ruby187

Respondido el 11 de enero de 11 a las 21:01

Tengo el mismo problema. Pasé horas tratando de arreglarlo, reconstruyendo ruby, etc. Para cualquier configuración de LANG = estaba fallando.

Finalmente descubrí en el código que fue durante la carga del archivo init, es decir, ~ / .inputrc.

Mi $ HOME en la computadora problemática no tenía el ~ / .inputrc ... Traté de crear uno vacío y ... ¡funcionó!

Así que intenta touch ~/.inputrc

Respondido 23 Abr '13, 19:04

Acabo de encontrar el mismo problema con los rieles 4.1.1 y resultó que mi ~/.inputrc El archivo se codificó con la codificación ISO-8859-1. Después de convertir el archivo a UTF-8, todo funcionó bien:

$ iconv --from-code=ISO-8859-1 --to-code=UTF-8 ~/.inputrc >out
$ mv out ~/.inputrc

Para comprobar qué codificación inputrc el archivo está codificado con, use:

$ file --mime-encoding ~/.inputrc

Respondido 08 Jul 14, 01:07

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.