2012-03-18 3 views
1

Использование скрипта/консоли в рельсах 2.3.12 через PuTTY. Когда я нажимаю стрелку «вверх», чтобы получить доступ к последней команде, которую я написал, вместо того, чтобы поднимать команду, она просто печатает странную строку «^ [[A» на терминал. То же самое с другими стрелками ... назад стрелка печатает "^ [[D" и прямая стрелка печатает "^ [[C"История команд в Rails console over PuTTY

Надеясь, что кто-то узнает эти странные коды и может рассказать мне, как правильно стрелять. Это проблема с настройкой PuTTY?

ответ

1

Функциональность стрелки вверх указана readline. Обычно, когда Ruby построен, ./configure автоматически обнаруживает библиотеки readline и строит рубиновые сопоставления с ними. Иногда это не работает, и при создании Ruby вам необходимо установить новые библиотеки или настраивать configure --with-readline-dir. irb и rails-console просто используют возможности readline для ruby ​​stdlib, проблема соевых проблем, вероятно, в том, что ваша конструкция ruby ​​не обнаружила и не привязала readline.

Предлагаю вам ознакомиться с other SO questions relevant to building ruby with readline, чтобы узнать, дает ли один из них руководство для вашей версии рубина и вашей ОС.

0

Я использовал это, и он работал на меня с JRuby 1.6.7 и Rails 2.3.8 (ссылка на оригинальное решение)

Похоже пакетирования предотвращает IRB консоли с помощью Readline. Вы можете обойти эту проблему, поставив следующую строку в .irbrc, который заставит IRB использовать Readline:

IRB.conf[:USE_READLINE] = true 

как предложено здесь

Running rails console with bundle exec

надеюсь, что это помогает.

Смежные вопросы