저는 현재 Caps 키를 사용하고 있으며 ISO_Level3_shift
h, j, k, l, $ 및 0을 vim 키에 매핑하고 있습니다. 작동하고 모든 것이 정상입니다. 그런데 저는 SQL을 사용하는데, SQL 코드를 모두 대문자로 쓰고 싶어서 Shift 키를 누른 채 한 글자씩 입력하기가 어렵습니다. 그래서 제가 원하는 것은 이 vim 키를 그대로 사용하면서도 일부 SQL 프로그래밍을 수행하는 동안 Caps Lock을 전환할 수 있는 것입니다. 잠시 누르고 있거나 Shift+Caps를 눌러 다시 전환할 수 있습니다.
나는 두 번째 레이아웃을 사용하고 있기 때문에 xmodmap이 작동하지 않고 xmodmap을 사용하면 작동하지 않기 때문에 내가 하고 있는 일을 달성하기 위해 XKB를 사용하고 있습니다.
내 파일은 다음과 같습니다 /usr/share/X11/xkb/symbols/us
. 또는 적어도 현재 설정이 있는 파일의 일부는 다음과 같습니다.
key <AC06> { [ h, H, Left ] };
key <AC07> { [ j, J, Down ] };
key <AC08> { [ k, K, Up ] };
key <AC09> { [ l, L, Right ] };
key <AE10> { [ 0, parenright, Home ] };
key <AE04> { [ 4, dollar, End ] };
key <CAPS> { [ ISO_Level3_Shift ] };
이 부분은 다음 위치에 있습니다.
default partial alphanumeric_keys modifier_keys
xkb_symbols "basic" {}
막힌
도움을 주셔서 미리 감사드립니다.
답변1
이를 달성하려면 다음 명령 중 하나를 사용할 수 있습니다.
esc를 대문자로 바꿉니다.setxkbmap -option caps:swapescape
Shift + Caps는 Caps Lock을 켭니다.setxkbmap -option caps:escape_shifted_capslock
시작할 때 이 중 하나를 실행하면 컴퓨터에 추가할 수 있습니다.~/.xprofile
원천: man xkeyboard-config
&man setxkbmap