2012-10-10 2 views
7

OS X에서 irb를 사용하고 있으며 왼쪽/오른쪽 옵션 (또는 META + B/F)을 누르면 커서가 다음/이전 단어. 하지만 irb는 점 (.) 문자를 단어 분리 기호로 취급하지 않습니다. (.)IRB는 단어 분리 문자로 도트 (.)를 사용하지 않습니다.

나는하여 .irbrc에 추가하려고했습니다, 그래서 지금은 다음과 같습니다

Readline.basic_word_break_characters = " \t\n`><=.;|&{(" 

하지만 그 효과가 없습니다.

필자는 Mountain Lion Ruby를 사용하고 있으며, 수동으로 컴파일 된 1.9.3 버전의 irb는 비슷하게 작동합니다. 또한 점은 bash와 pry에서 구분 기호로 처리되므로 시스템 전체 설정이 좋을 수 있습니다.

감사 어떤 도움,

감사

확인
+1

비슷한 질문 : http://stackoverflow.com/questions/5097919/word-boundaries-in-irb – pje

답변

3

, 문제가 전혀 내 시스템에 설치된 libreadline 없었다이었다 것으로 보인다. 최신 readline을 설치하고 루비를 다시 컴파일하면 문제가 해결되었습니다.

ftp://ftp.cwru.edu/pub/bash/readline-6.2.tar.gz에서 readline 6.2를 사용했는데 기본 설치된 ./configure && make && make install을 사용했습니다.

그리고 그 IRB는 점을 치료 시작 후

sudo ruby-build 1.9.3-p194 /opt/ruby-1.9.3-p194 CONFIGURE_OPTS="--with-readline-dir=/usr/local" 

다음 옵션을 루비 빌드 사용하여 루비에게 1.9.3-p194을 설치 한, 밑줄 및 단어 구분 기호로 다른 문자의 무리.

또한 제대로 작동의 readline 같은 것을 반환해야합니다 :

Readline::VERSION => "6.2"  

과 오작동을 말한다 :

Readline::VERSION => "EditLine wrapper" 
+0

감사합니다. (http://stackoverflow.com/a/7020698/835766)에서 얻은 정보와 함께 rvm에서도이 작업을 수행 할 수있었습니다. –

1

당신은 (위의 문제가있는 경우 중 하나가 설치에 실패하거나 당신은 단지 더 많은 지시가 필요합니다.), 내가 작동하도록 한 것은 여기에 있습니다.

curl ftp://ftp.cwru.edu/pub/bash/readline-6.3.tar.gz > temp-readline.tar.gz 다음 tar temp-readline.tar.gz에 압축을 풉니 다 : 최신 맥 OS X (10.11.2 엘 캐피)에 사람들을 위해

. 그런 다음 cd readline-6.3으로 해당 디렉토리로 이동하십시오. 위와 마찬가지로 ./configure && make && make install으로 구성하고 설치하십시오.

희망이 도움이됩니다.