Używam irb na OS X, a kiedy naciskam opcję left / right (lub META + B / F) kursor przesuwa się do następnego / poprzedniego słowa, ale irb nie będzie traktował znaku kropki (.) Jako separator słów.
Próbowałem dodać (.) Do .irbrc, więc wygląda to teraz:
Readline.basic_word_break_characters = " tn`><=.;|&{("
Ale to nie działa.
Używam rubinu Mountain Lion, aręcznie skompilowane 1.9.3, obie wersje irb zachowują się podobnie. Również kropka jest traktowana jako separator w bashu i podcięciu, więc ustawienia systemowe są prawdopodobnie w porządku.
Każda pomoc doceniona,
Dzięki
Odpowiedzi:
4 dla odpowiedzi № 1Ok, wydaje się, że problem polegał na tym, że nie było libreadline zainstalowane w moim systemie w ogóle. Zainstalowanie najnowszego readline i rekompilacja ruby rozwiązało problem.
Użyłem readline 6.2 od ftp://ftp.cwru.edu/pub/bash/readline-6.2.tar.gz
, który został zainstalowany przy użyciu podstawowego ./configure && make && make install
.
I zainstalowałem ruby 1.9.3-p194 używając ruby-build z następującymi opcjami
sudo ruby-build 1.9.3-p194 /opt/ruby-1.9.3-p194 CONFIGURE_OPTS="--with-readline-dir=/usr/local"
Następnie IRB zaczął traktować kropki, podkreślenia i kilka innych znaków jako separatory słów.
Również poprawnie działający readline powinien zwracać coś takiego:
Readline::VERSION => "6.2"
a źle postępujący mówi:
Readline::VERSION => "EditLine wrapper"
1 dla odpowiedzi nr 2
Jeśli masz problemy z powyższym (albo nie udało się zainstalować, albo potrzebujesz więcej instrukcji), oto co zrobiłem, aby działało.
Dla użytkowników najnowszego systemu Mac OS X (10.11.2 El Capitan):
curl ftp://ftp.cwru.edu/pub/bash/readline-6.3.tar.gz > temp-readline.tar.gz
następnie rozpakuj za pomocą tar temp-readline.tar.gz
. Następnie przejdź do tego katalogu za pomocą cd readline-6.3
. Skonfiguruj i zainstaluj za pomocą ./configure && make && make install
, tak jak powyżej.
Mam nadzieję że to pomoże.