Bash에서 GNU Readline의 키 바인딩을 조정하고 있습니다. 구체적으로 다음과 같은 매핑 효과를 얻으려고 합니다.
Control' ==>
'I'
ControlShift' ==>
"I"
Control` ==>
`I`
Control[ ==>
[I]
ControlShift[ ==>
{I}
I
확장된 커서 위치를 나타냅니다 .
나는 이것을 가지고 있습니다 ~/.inputrc
. 그러나 <C-`>
매핑만 예상대로 작동합니다.
$include /etc/inputrc
$if mode=emacs
"\C-\'": "\'\'\C-b"
"\C-`": "``\C-b"
"\C-\"": "\"\"\C-b"
"\C-{": "{}\C-b"
"\C-[": "[]\C-b"
$endif
내 구성에 어떤 문제가 있는지, 그리고 이러한 매핑을 올바르게 수행하는 방법(가능한 경우)을 알고 싶습니다.
답변1
터미널에서는 일반적으로 얻을 수 없습니다모두제어 수정자와 이동 수정자의 조합은 서로 다른 값을 갖습니다.
- 기반제어그리고옮기다정의하는 US-ASCII(및 이와 유사한) 구성표에서제어그리고옮기다알파벳 문자의 경우 하나를 추가하세요.희귀한문장 부호.
- 콤비네이션컨트롤+시프트일반적으로 다음을 제외하고는 효과가 없습니다.특별한열쇠.
- 일부 터미널은 제어/변환을 위한 이스케이프 시퀀스를 정의합니다.특별한키(예: 커서 키 및 기능 키). 이 tab키는 이러한 키 중 하나가 아닙니다.
다음은 ASCII를 사용하여 제어 문자를 설명하는 스크린샷입니다.