나는 내 키보드를 일반 Dvořák 키보드로 설정하고 에스페란토의 곡절 기호를 해당 키에 추가하려고 합니다. 이는 ŝ가 s 키에 대한 수정자 역할을 하고, ĉ가 c 결합에 대한 수정자 역할을 한다는 것을 의미합니다.
그러나 제가 보기엔 올바른 설정인 것 같은데, 관련 키 조합을 눌러도 아무런 반응이 없습니다.
X11/xkb/symbols/epo
기본 키보드가 querty, dvorak 또는 colemak인지 여부에 따라 곡절을 적용하는 일부 키맵을 나열합니다. 예를 들어, 다음은 qwerty 섹션의 일부 콘텐츠입니다.
partial
xkb_symbols "qwerty" {
key <AB03> { [ NoSymbol, NoSymbol, ccircumflex, Ccircumflex ] };
key <AC05> { [ NoSymbol, NoSymbol, gcircumflex, Gcircumflex ] };
key <AC06> { [ NoSymbol, NoSymbol, hcircumflex, Hcircumflex ] };
이라는 부분을 보거나 봤을 때 evdev.lst
, 위 부분 중 하나를 적용해야 한다고 생각했는데, 곡절부호가 있는 소문자 c가 생성된다는 뜻 이었습니다 .base.lst
esperanto
esperanto:qwerty
esperanto:dvorak
AltGr-c
내 키보드의 오른쪽 Alt 키는 스캔 코드 108을 생성하는데, 인터넷의 일부 장소에서는 전통적으로 AltGr
또는 이라고 부릅니다 ISO_Level3_Shift
. 그러나 xev는 이에 대해 명확합니다 Alt_R
.
KeyPress event, serial 34, synthetic NO, window 0x2400001,
root 0x6c0, subw 0x0, time 28019153, (69,719), root:(1033,739),
state 0x0, keycode 108 (keysym 0xffea, Alt_R), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
마지막으로 제가 설정하려고 했던 xorg 구성은 다음과 같습니다. xev가 오른쪽 Alt를 누르고 및 를 c
생성 하도록 지시했지만 어느 키보드도 수정된 문자를 생성하지 않는다는 점에 유의할 것입니다.Alt_R
c
Section "InputClass"
Identifier "built-in keyboard"
MatchProduct "AT Translated Set 2 keyboard"
Option "XkbLayout" "dvorak"
Option "XkbOptions" "esperanto:dvorak"
EndSection
Section "InputClass"
Identifier "ErgoDox EZ"
MatchVendor "ZSA"
MatchProduct "ZSA Ergodox EZ"
Option "XkbLayout" "us"
Option "XkbOptions" "esperanto:qwerty"
EndSection
현재로서는 문제가 내 키보드가 AltGr 스캔 코드를 생성하지 않는 것인지, 아니면 AltGr이 이제 완전히 다른 것을 의미하는지, 아니면 내 키보드 옵션이 올바르지 않은 것인지 알 수 없습니다. 이 작업을 수행하는 데 도움을 주거나 적어도 작동하지 않는 이유를 이해할 수 있기를 바랍니다.
답변1
글쎄, 찾았어.
많은 연구 끝에 나는 실제로 꽤 가깝다는 것을 알게되었습니다. 문제는 미국 키보드 레이아웃이 실제로 기본적으로 레벨 3을 활성화하지 않는다는 것입니다.
나는 우연히 우연히 발견했다이 페이지lv3:ralt_switch
그 부분에서 XkbOptions
분명히 알 수 있어요 .
따라서 이제 Xorg 구성 섹션을 다음과 같이 수정했습니다.
Section "InputClass"
Identifier "built-in keyboard"
MatchProduct "AT Translated Set 2 keyboard"
Option "XkbLayout" "us"
Option "XkbVariant" "dvorak"
Option "XkbOptions" "esperanto:dvorak,lv3:ralt_switch"
EndSection
Section "InputClass"
Identifier "ErgoDox EZ"
MatchVendor "ZSA"
MatchProduct "ZSA Ergodox EZ"
Option "XkbLayout" "us"
Option "XkbOptions" "esperanto:qwerty,lv3:ralt_switch"
EndSection
두 키보드 모두 US 레이아웃으로 설정되어 있고 내부 키보드는 dvorak 변형으로 설정되어 있습니다(외부 키보드는 Ergodox이고 레이아웃을 하드웨어에 플래시했기 때문입니다). lv3:ralt_switch
내 오른쪽 Alt에 AltGr 활성화를 추가했습니다 . 관련 메모 esperanto:dvorak
에서 esperanto:qwerty
질문 시작 부분에 설명한 대로 이제 두 키보드가 모두 작동합니다.