Bash의 특정 키에 줄 연속 작업을 바인딩하는 방법이 있습니까?
즉, 두 개의 키를 차례로 누르는 대신 \
+ 와 Enter같이 두 개의 키를 동시에 누르는 것 입니다 .AltEnter
대신에 다음과 같습니다.
$ echo one \
Enter
> two \
Enter
이 작업을 수행:
$ echo one
을 누른 다음 Alt+ Enter=를 눌러 백슬래시 및 개행 문자를 가져오고
> two
Alt+ Enter-를 눌러 백슬래시 및 개행 문자 등을 가져옵니다.
나는 readline 바인딩을 보았지만 그러한 작업을 찾지 못했습니다. 말할 것도 없이, 이 기능은 나에게 매우 필요합니다. :) 그냥 재미있습니다.
답변1
바인딩 명령을 사용하여 이와 같은 작업을 수행할 수 있습니다.
bind '"\e[24~":"\\\n"'
F12
C-^M을 바인딩하는 방법을 모르기 때문에 사용하고 있습니다. bcos 입력이 CM일 가능성은 없지만 다음을 사용할 수 있습니다.
bind '"\C-m":"\\\n"'
답변2
나는 그 안에서 답을 찾았다.아치 리눅스 위키- 매크로를 통해 수행할 수 있습니다.
bind '"\e\C-m":" \\\C-j"'
Alt필요한 기능을 + Enter또는 Alt++ 조합 에 바인딩합니다 .Ctrlm
.bashrc
그런 다음 이 줄을 파일 에 추가해야 하며 이 바인딩은 재부팅 후에 작동합니다.
사용 가능한 매크로를 보려면 다음을 실행하세요 bind -s
.
$ bind -s
$ "\e\C-m": " \\\C-j"