Ubuntu Feisty 이후 버전에서 bash readline 버그 해결 or 우회 방법?
글쓴이: daybreaker / 작성시간: 토, 2007/10/20 - 9:38오후
얼마 전에 뒤늦게-_- Ubuntu Edgy를 Feisty로 업그레이드했는데, 한 가지 문제가 발생하고 있습니다.
(서버용이라 GUI 없이 터미널 접속만 사용합니다.)
다른 것은 다 원래 한글 로케일이 잘 유지되는데 aptitude에서 bash 패키지의 설명이 러시아어로 나온다는 점과(bash 자체 사용에는 문제 없는 것 같습니다만..), readline 버그인지 몰라도 bash 프롬프트 상에서 전에는 잘 되던 Home 및 Ctrl+A 키가 오동작한다는 것입니다. 정확히 말하면 Home 키를 눌렀을 때 입력한 내용의 맨 첫 글자로 가야 하는데 5번째 글자로 가고 거기서 적는 내용이 기존 내용과 섞여서(?) 덮어집니다.;
구글링을 좀 해봤는데 딱히 방법을 모르겠네요.
/etc/inputrc도 살펴봤지만 원래 기본값으로 잘 쓰고 있던 거라서 특별한 문제점을 못 찾겠습니다. (아, vi 편집기와 같은 곳에서는 원래 쓰던 대로 잘 동작합니다만 여기는 readline이 아니니...)
신기한 건 bash에서는 Home키가 오동작하는데 mysql 콘솔처럼 똑같이 readline을 쓰는 곳에서는 잘 동작합니다.
이 문제의 해결 방법 아시는 분 계신가요? (다른 사람한테 물어보니 Gutsy에서도 그렇다는데 확인해보지는 못했습니다)
Forums:
일단 임시 우회
제가 bash 프롬프트를
PS1='\033[0;32;1m${debian_chroot}\u\033[34m@\033[33;2m\h\033[31m:\033[37;1m\w\n\$ \033[0m'
와 같이 꾸며서 쓰고 있었는데, 저기서 newline 문자를 없애주니까 잘 되는군요..
PS1='\033[0;32;1m${debian_chroot}\u\033[34m@\033[33;2m\h\033[31m:\033[37;1m\w\$ \033[0m'
요렇게요. -_-;
전에는 잘 됐었는데...ㅠㅠ
아마도..
bash는 자체적으로 readline을 가지고 있습니다. 특정버전의 readline을 가지고서 동작합니다. 이게 원인이지 않을까요?
ldd를 해보시면 ubuntu 배포판에서 bash가 readline을 직접 구현했다는 것을 알 수 있을 것입니다.
댓글 달기