Recentemente, tentei colar alguns caracteres Unicode em minha irb
sessão, mas fui recebido com o seguinte:
irb(main):001:0> utf8_str = "rU+FFC3U+FFA9sumU+FFC3U+FFA9"
Não era isso que eu esperava! Depois de algumas buscas intrépidas, este artigo de Henrik Nyh diz que a libedit
biblioteca OS X padrão para a qual Ruby é compilado não tem um bom suporte a Unicode.
Eu queria confirmar se rbenv e ruby-build foram vinculados ao, em libedit
vez de uma versão mais recente do readline
.
$ cd ~/.rbenv/versions/1.9.3-p374/lib/ruby/1.9.1/x86_64-darwin12.2.0
$ otool -L readline.bundle
readline.bundle:
/usr/lib/libedit.3.dylib (compatibility version 2.0.0, current version 3.0.0)
Vamos consertar isso. Atualize o homebrew e instale a readline
biblioteca mais recente :
$ brew update && brew install readline
Em seguida, recompile o ruby configurando manualmente o caminho para readline
usar a CONFIGURE_OPTS
variável de ambiente:
CONFIGURE_OPTS=--with-readline-dir=`brew --prefix readline` rbenv install 1.9.3-p374
Podemos confirmar que readline
foi vinculado executando otool
novamente:
$ otool -L readline.bundle
readline.bundle:
/usr/local/opt/readline/lib/libreadline.6.2.dylib (compatibility version 6.0.0, current version 6.2.0)