Readline: 대시를 하이픈으로 처리

Readline: 대시를 하이픈으로 처리

Vim이 기본적으로 처리하는 것처럼 Readline이 대시로 구분된 단어를 단일 단어로 처리하길 원합니다.

예를 들어, 아래 줄 끝에 가서 다음을 입력하면ctrl-W

cp long-filename-with-dashes

dashesReadline은 전체 문자열이 아닌 공백까지만 제거합니다 .

다른 것들을 손상시키지 않고 이것을 구성할 수 있는 방법이 있나요?

답변1

다음 두 줄을 사용하여 원하는 동작을 달성할 수 있었습니다 bashrc.

stty werase undef
bind '\C-w: backward-kill-word'

그러나 가능한 부작용은 아직 알려지지 않았습니다.

편집하다inputrc: 만지거나 bashrc의지 하지 않고 올바른 설정 방법을 찾았습니다.stty이 기사:

set bind-tty-special-chars Off

$if Bash
  \C-w: backward-kill-word
$endif

고쳐 쓰다:이는 Vim의 중립적인 bind-tty-special-chars행동(그리고 아마도 다른 것들도)을 깨뜨리는 것처럼 보이므로 나에게 가장 좋은 해결책은 Vim을 및 .we<c-w>stty werase undefbashrc\C-w: backward-kill-wordinputrc

관련 정보