X11 (콘솔에서 모르겠 음)에서는 Esc 키의 동작을 다시 정의하여 수행 할 수 있습니다. 나는 "shift (break_caps)"정의를보고 그것이 어떻게 작동하는지, 그것을 조정했다.
봐 XKB에이 대답 경우 로컬 수정 된 파일을 넣고 그것들을로드하는 방법 /에 대한 자세한 내용은.
그리고 원하는 것을하기 위해서는 다음 ~/.xkb/symbols/mysymbols
과 같은 섹션 의 로컬 심볼 파일 (예 :)이 필요합니다.
partial modifier_keys
xkb_symbols "esc_breaks_caps" {
key <ESC> {
type = "ALPHABETIC",
actions [Group1] = [
SetMods(modifiers=none),
SetMods(modifiers=Lock,clearLocks)
]
};
};
로컬 키맵 파일 (예 : ~/.xkb/keymap/mykbd
;로 만들 수 있음 setxkbmap -print > ~/.xkb/keymap/mykbd
) xkb_symbols
에서 추가 할 행을 변경 하십시오 +mysymbols(esc_breaks_caps)
.
당신은 지금 그것을로드 할 수 있습니다 : xkbcomp -I$HOME/.xkb ~/.xkb/keymap/mykbd $DISPLAY
를 누르면 EscCapsLock 상태가 제거됩니다 (실제로, 효과 는 Esc 릴리스 에서 발생합니다 . 변경 키 만 즉시 효과가 있다고 생각합니다 . 다른 것들은 릴리스 후 효과입니다).
이스케이프 키와 CapsLock 키를 바꾸려면 대신 이것을 사용하십시오 (그리고 당신은 mykbd 파일에 "+ mysymbols (esc_swap_and_breaks_caps)"를 넣습니다) :
partial modifier_keys
xkb_symbols "esc_swap_and_breaks_caps" {
replace key <CAPS> {
type = "ALPHABETIC",
symbols = [ Escape, Escape ],
actions [Group1] = [
SetMods(modifiers=none),
SetMods(modifiers=Lock,clearLocks)
]
};
replace key <ESC> { [ CapsLock, CapsLock ] };
};
물리적 키는 <CAPS>
~이며 <ESC>
; <CAPS>
( CapsLock키보드에 <ESC>
키가 새겨진 Esc) Escape를 보내고 (키가 새겨진 )는 CapsLock을 보내고, <CAPS>
(Esc를 보내는 중) 또한 Capslock 상태를 설정 해제합니다.
vim
또는 전체 데스크톱 에만 해당 기능을 추가해야 합니까?