readline: unix-word-rubout, 하지만 거꾸로는 가능합니까?

readline: unix-word-rubout, 하지만 거꾸로는 가능합니까?

.inputrc거꾸로 수행하도록 설정하려고 하는데 unix-word-rubout현재 실패하고 있습니다. 내 에 매핑
했습니다 .M-w.inputrc

이것은 작동하지 않습니다:

"\eu": universal-argument
"\ew":  "\eu-1\C-w"

이것도 마찬가지다:

"\ew":  "\e-1\C-w"

M--셸에서 다음 작업을 눌러 대화식으로 수행하지도 않습니다 C-w. 즉, 커서 왼쪽에 있는 단어를 계속 삭제합니다.

C-wPS 나는 다른 kill/rubout readline 명령이 있다는 것을 알고 있지만 공백을 구분 기호로 사용하여 단어를 거꾸로 사용하여 단어를 죽이는 동작을 정말로 갖고 싶습니다 .

답변1

간단히 말해서 다음 행을 에 추가하십시오 ~/.inputrc.

"\ew": kill-region
"\ea": '\e \C-] \ew'

당신의 의지에 따라 캐릭터 wa캐릭터를 변경할 수 있습니다.

어떻게 작동하나요?

kill-region예를 들어, readline 명령 에 키 시퀀스를 할당해 보겠습니다 Alt.w

"\ew": kill-region

그런 다음 다음 매크로를 다른 시퀀스에 할당해 보겠습니다 Alt.a

"\ea": '\e \C-] \ew'

이는 다음 작업을 수행합니다.

\e<SPACE>:

커서가 있는 곳에 표시를 설정

\C-]<SPACE>:

공백을 검색하고 거기로 커서를 이동합니다.

\ew:

마크와 커서 사이의 영역을 죽입니다.

관련 정보