“inputrc”파일에서 키 바인딩에 대한 일반적인 키 이름 형식은 무엇입니까?


17

inputrc파일의 키 바인딩 형식 은 다음과 같습니다.

keyname: function-name or macro

키 이름의 경우 다음과 같은 것을 보았습니다.

"\e[B"
"\e[1~"
"\e[5D"
"\M-l"
"\C-[OD"
"\e\e[D"

이 키 이름의 의미는 무엇이며 키 이름의 일반적인 형식은 무엇입니까? 문서에 대한 링크를 공유하십시오.


2
귀하의 문서에 대해서는 readline(3)맨 페이지 또는 readline 사용자 매뉴얼을 참조하십시오 .
jw013

1
다음을 통해 키 구성 (readline-inputrc)을 확인하십시오. $ bind -p
vigo

답변:


12

키 바인딩은 다음 형식 중 하나를 사용하여 수행 할 수 있습니다.

  1. 키 이름 : command_name
  2. "keystroke_sequence": command_name

첫 번째 양식에서는 단일 키의 이름을 철자 할 수 있습니다. 예를 들어, CONTROL-U는 control-u로 작성됩니다. 단일 키에 명령을 바인딩 할 때 유용합니다.

두 번째 형식에서는 명령에 바인딩 될 일련의 키를 설명하는 문자열을 지정합니다. 예제로 제공 한 것은 특수 키를 나타내는 emacs-tyle 백 슬래시 이스케이프 시퀀스입니다.

\C-제어
\M-메타
\e-이스케이프

다른 백 슬래시 –를 사용하여 백 슬래시를 지정할 수 있습니다 \\. 마찬가지로 '"도 탈출 할 수 - \'\"

최신 정보

이 문자들은 특수 키를 누를 때 터미널에서 해석되는 것입니다. 정기적으로 사용하는 것처럼 키 바인딩에 일반 알파벳과 숫자를 바인딩하고 싶지 않으며 실수로 파일 ~/.inputrc또는 /etc/inputrc파일에 매핑 된 조합을 칠 때 문제가 발생할 수 있습니다 .

[1~ is what is interpreted by your terminal when you press your HOME button. 

자세한 내용 read을 보려면 터미널 프롬프트 를 입력 하고 기능 키, 홈, 종료, 화살표 키와 같은 모든 유형의 특수 키를 누르고 표시되는 내용을 확인하십시오.

다음은 기본적인 이해를 제공 할 수 있는 작은 참조 입니다. 행운을 빕니다! :)


2
무엇을 않는 \e[1~, \M-l그리고 \C-[OD의미? 는 \e, \M\C부분은 명확하다. 나머지는 어때? 예를 들어 : [1~- Shift+ {+ 1+ Shift+를 눌러야 `합니까?
Misha Moroshko

답변이 업데이트되었습니다. 희망이 도움이됩니다!
jaypal 싱

링크가 끊어졌습니다. 여전히 물결표 또는 열린 브래킷이 무엇인지 모르십니까?
Carl Smith
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.