이를 수행할 수 있는 확실한 방법이 있거나 이 기능이 내가 알지 못하는 더 큰 문제의 일부인 경우를 대비하여 "표준"을 사용하고 있습니다(예: 관련 바로가기 및 기능 활성화와 관련이 있을 수 있음). 그렇지 않으면 나만의 바로가기를 추가해도 괜찮습니다.
답변1
쉘이 이 readline
라이브러리를 사용하는 경우 기본 파일에 있는 내용은 다음과 같습니다 /etc/inputrc
.
# mappings for Ctrl-left-arrow and Ctrl-right-arrow for word moving
"\e[1;5C": forward-word
"\e[1;5D": backward-word
"\e[5C": forward-word
"\e[5D": backward-word
"\e\e[C": forward-word
"\e\e[D": backward-word
이 파일은 환경 변수가 설정되지 않았고 INPUTRC
홈 디렉터리에 파일이 없는 경우에만 읽혀집니다..inputrc
이제 Ctrl-Left를 누를 때 문자열 중 하나를 내보내고 Ctrl-Right를 누를 때 문자열 중 하나를 내보내도록 콘솔에 지시해야 합니다 backward-word
.forward-word
이를 위해 우리는 특별한 키맵을 추가해야 합니다 /etc/console-setup/remap.inc
:
# Ctrl + Left arrows key (readline's backward-word)
control keycode 105 = F200
string F200 = "\033[5D"
# Ctrl + Right arrows key (readline's forward-word)
control keycode 106 = F201
string F201 = "\033[5C"
여기서는 원하는 시퀀스를 저장하기 위해 두 개의 주요 기호 F200
및 F201
(의 출력에서 준 무작위로 선택됨 ) 을 빌렸습니다 . 는 왼쪽 화살표, 은 오른쪽 화살표입니다(이 키 코드는 다음을 통해서도 얻을 수 있습니다).dumpkeys --long-info
readline
keycode 105
keycode 106
dumpkeys
이제 새 키맵을 다시 작성해 보겠습니다.
setupcon --save-only
파일을 (다시) 생성해야 합니다 /etc/console-setup/cached.kmap.gz
. 다음 명령을 사용하여 수동으로 로드할 수 있습니다.
loadkeys /etc/console-setup/cached_UTF-8_del.kmap.gz
또는 더 나은 방법은 기계가 부팅될 때와 같은 것입니다.
service console-setup start
2023년 업데이트
현재 데비안 버전 /etc/console-setup/cached_UTF-8_del.kmap.gz
은 /etc/console-setup/cached.kmap.gz
.
답변2
Linux 콘솔의 경우 키맵을 사용자 정의할 수 있습니다. 출발 장소는dumpkeys
. 이것이 표준이다방법. Linux 콘솔에는 적용 가능한 표준이 없습니다.제본, 그러나 물론 GUI를 에뮬레이트할 수 있습니다(예: xhienne이 암시하는 xterm).
중복된 내용은 보이지 않지만 다음이 도움이 될 것입니다.