Подтвердить что ты не робот

Не удается войти в Umlauts в Ruby 1.9.3 IRB

У меня очень странное поведение в Ruby 1.9.3 IRB с Mac OS 10.7.3 Когда я пытаюсь ввести Umlaut, он бежит в приглашении и выглядит следующим образом (я ввел "ü" на клавиатуре)

irb(main):001:0> "\U+FFC3\U+FFBC"

Что супер странно:

irb(main):001:0> "\U+FFC3\U+FFBC".length
=> 0

Конечно, символ также не отображается:

irb(main):001:0> "\U+FFC3\U+FFBC"
=> ""

Кто-нибудь знает, что здесь происходит или как это исправить?

4b9b3361

Ответ 1

Виктор Мороз не дал окончательного ответа, но его связь привела меня к решению (спасибо!):

Я забыл упомянуть:

То, что я тогда сделал для решения этой проблемы, в моем случае состояло в том, чтобы перекомпилировать, на этот раз указав ruby ​​на более новую версию readline (6.2.2 в моем случае), которую я установил с homebrew.

Для этого потребовались следующие шаги:

$ brew install readline
$ export CPPFLAGS=-I/usr/local/Cellar/readline/6.2.2/include
$ export LDFLAGS=-L/usr/local/Cellar/readline/6.2.2/lib/
$ curl https://raw.github.com/gist/1688857/rbenv.sh | sh && rbenv global 1.9.3-p125-perf

Ответ 2

Я столкнулся с этой проблемой, но мой Ruby был построен с rvm, а не с ruby-build. Я также ранее использовал Homebrew в Mountain Lion для запуска других инсталляторов пакетов, и среди них был Readline 6.2.5 или что-то в этом роде. Это, оказывается, является причиной этой проблемы для меня. Итак, здесь исправление:

От сайт RVM:

Если у вас возникла ошибка при компиляции, относящейся к readline, вам может потребоваться выполнить установку с помощью процедуры, описанной ниже.

$rvm pkg install readline

$rvm переустановить 1.9.2 --with-readline-dir = $rvm_path/usr

Обратите внимание, что эта ошибка встречается чаще всего при использовании MacPorts, Fink или Homebrew для чтения в вашей системе.

Надеюсь, это поможет кому-то еще!

Ответ 3

Это может помочь http://henrik.nyh.se/2008/03/irb-readline

ОБНОВЛЕНИЕ На самом деле на моем Mac у меня нет проблем с портовой версией Ruby, но исходная версия Mac OS имеет эту проблему (никогда не использовала ее). Поэтому самый простой способ - это просто установить Ruby из портов.

Ответ 4

эта команда разрешила это для меня:

brew install readline
RUBY_CONFIGURE_OPTS=--with-readline-dir="$(brew --prefix readline)" rbenv install 1.9.3-p286

источник: https://github.com/rbenv/ruby-build/wiki