Saya memiliki dua tata letak papan ketik khusus, satu versi modifikasi us
(yang saya sebut vi
,) dan satu versi modifikasi dk
(yang saya sebut da
.)
Keduanya terdaftar dengan benar, dan berfungsi. Setelah mode.
The vi
memiliki Capslock dan Luput bertukar identik dengan bagaimana hal itu dilakukan dalam capslock(swapescape)
tata letak parsial, dan memiliki Compose kunci tertentu ( <LSGT>
key, yang unusued di us
atas pc105
, tetapi digunakan untuk <>\¬
dengan dk
.)
(Jelas vi
yang saya buat untuk editor mirip-Vi. Alasan mengapa saya tidak hanya mengatur caps:swapescape, compose:102
adalah karena itu juga akan mempengaruhi dk
tata letak - yaitu menghilangkan kemampuan untuk memasukkan simbol <>\¬
.)
Masalah yang awalnya saya temui adalah vi
tata letak saya akan menukar Capslock dan Escape, dan bahwa ini akan berdarah ke dk
tata letak asli .
Lalu saya membuat da
tata letak yang mencoba untuk memperbaiki ini, dengan menetapkan bahwa Capslock memang Capslock, dan Escape itu memang Escape.
Dan ini hampir berhasil. Sekarang keduanya bertindak sebagai Capslock ketika da
tata letak dipilih.
Bagaimana cara memastikan Escape adalah Escape dan Capslock adalah Capslock da
sementara tetap mempertahankan perilaku bertukar vi
?
ETA: Saya sekarang telah mencoba untuk membalik urutan dua tata letak ini (sehingga tata letak membaca da,vi
) dan kesalahan telah segera beralih: sekarang keduanya vi
Capslock, dan da
memiliki cara yang normal.
Saya menggunakan Xubuntu 14.04
vi
file tata letak:
default partial alphanumeric_keys modifier_keys
xkb_symbols "basic" {
name[Group1]= "English (US) with Caps:SwapEscape and Compose:102";
key <TLDE> { [ grave, asciitilde ] };
key <AE01> { [ 1, exclam ] };
key <AE02> { [ 2, at ] };
key <AE03> { [ 3, numbersign ] };
key <AE04> { [ 4, dollar ] };
key <AE05> { [ 5, percent ] };
key <AE06> { [ 6, asciicircum ] };
key <AE07> { [ 7, ampersand ] };
key <AE08> { [ 8, asterisk ] };
key <AE09> { [ 9, parenleft ] };
key <AE10> { [ 0, parenright ] };
key <AE11> { [ minus, underscore ] };
key <AE12> { [ equal, plus ] };
key <AD01> { [ q, Q ] };
key <AD02> { [ w, W ] };
key <AD03> { [ e, E ] };
key <AD04> { [ r, R ] };
key <AD05> { [ t, T ] };
key <AD06> { [ y, Y ] };
key <AD07> { [ u, U ] };
key <AD08> { [ i, I ] };
key <AD09> { [ o, O ] };
key <AD10> { [ p, P ] };
key <AD11> { [ bracketleft, braceleft ] };
key <AD12> { [ bracketright, braceright ] };
key <AC01> { [ a, A ] };
key <AC02> { [ s, S ] };
key <AC03> { [ d, D ] };
key <AC04> { [ f, F ] };
key <AC05> { [ g, G ] };
key <AC06> { [ h, H ] };
key <AC07> { [ j, J ] };
key <AC08> { [ k, K ] };
key <AC09> { [ l, L ] };
key <AC10> { [ semicolon, colon ] };
key <AC11> { [ apostrophe, quotedbl ] };
key <AB01> { [ z, Z ] };
key <AB02> { [ x, X ] };
key <AB03> { [ c, C ] };
key <AB04> { [ v, V ] };
key <AB05> { [ b, B ] };
key <AB06> { [ n, N ] };
key <AB07> { [ m, M ] };
key <AB08> { [ comma, less ] };
key <AB09> { [ period, greater ] };
key <AB10> { [ slash, question ] };
key <BKSL> { [ backslash, bar ] };
key <CAPS> { [ Escape ] };
key <ESC> { [ Caps_Lock ] };
key <LSGT> { type[Group1]="TWO_LEVEL", [ Multi_key, Multi_key ] };
};
da
file tata letak:
// based on a keyboard map from an 'xkb/symbols/dk' file
default partial alphanumeric_keys
xkb_symbols "basic" {
include "latin(type2)"
name[Group1]="Danish";
key <AE11> { [ plus, question, plusminus, questiondown ] };
key <AE12> { [dead_acute, dead_grave, bar, brokenbar ] };
key <AC10> { [ ae, AE, dead_acute, dead_doubleacute ] };
key <AC11> { [ oslash, Ooblique, dead_circumflex, dead_caron ] };
key <TLDE> { [ onehalf, section, threequarters, paragraph ] };
key <BKSL> { [apostrophe, asterisk, dead_doubleacute, multiply ] };
key <LSGT> { [ less, greater, backslash, notsign ] };
include "kpdl(comma)"
include "level3(ralt_switch)"
key <ESC> { [ Escape ] };
key <CAPS> { [ Caps_Lock ] };
};
setxkbmap -print -verbose 10
Setting verbose level to 10
locale is C
Trying to load rules file ./rules/evdev...
Trying to load rules file /usr/share/X11/xkb/rules/evdev...
Success.
Applied rules from evdev:
rules: evdev
model: pc105
layout: vi,da
variant: ,
Trying to build keymap using the following components:
keycodes: evdev+aliases(qwerty)
types: complete
compat: complete
symbols: pc+vi+da:2+inet(evdev)
geometry: pc(pc105)
xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete" };
xkb_symbols { include "pc+vi+da:2+inet(evdev)" };
xkb_geometry { include "pc(pc105)" };
};