Esc 키를 눌렀을 때 Caps Lock 끄기

Esc 키를 눌렀을 때 Caps Lock 끄기

CapsLock눌렀을 때 비활성화 할 수 있는 방법이 있나요 ? Esc예, 저는 VIM을 사용합니다! 실제로 대체 대문자 키보드 레이아웃이 있지만 Ctrl-6번거롭고 눌렀을 때 OS가 CapsLock을 비활성화하는 것을 선호합니다 Esc. 또한 몇 시간 동안 다른 서버에 SSH로 연결하는 경우가 많기 때문에 그곳에서는 기본 VIM을 사용하고 있습니다.

CapsLock제가 우연히 열쇠 를 교환했다는 점에 유의하세요 Esc. 그러나 Esc키를 눌렀을 때( CapsLock키보드에 라벨이 붙어 있고 그 옆에 있음 A) Escape를 수행하려면 이 키가 필요합니다 Disable-CapsLock-If-It-Is-Enabled.

이것은 쿠분투 12.10에 있습니다. 감사해요.

답변1

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만 생각합니다.수정자키는 즉시 적용되며, 다른 키는 해제한 후에 적용됩니다. )

아, 그리고 Escape 키와 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키보드에 새겨진 키)는 Escape를 보내고 <ESC>(새겨진 키 Esc)는 CapsLock을 보내는 반면 <CAPS>(Escape 보내기)는 Caps Lock 상태를 설정 해제합니다.

답변2

다음 행을 다음에 추가하십시오 ~/.Xmodmap.

clear lock
keycode 0x42 = Escape

그런 다음 다음 명령을 입력하십시오.

xmodmap ~/.Xmodmap

이제 키 Caps Lock가 이 키로 다시 매핑되었습니다 Esc.

참조 URL.


아직은 겪어야 할 일이것은 Ubuntu에서 CapsLock을 Escape로 매핑하는 방법에 대한 좋은 기사입니다., 이것은 unix.se 사용자인 것 같습니다 :)

답변3

이것이 귀하의 질문에 대한 답변인지 확실하지 않지만 Esc기능을 키에 매핑 하려면 CapsLock다음을 사용할 수 있습니다.

setxkbmap -option "caps:escape"

관련 정보