restruct
This commit is contained in:
108
nixos/hosts/adampad/xkb/symbols/capslock
Normal file
108
nixos/hosts/adampad/xkb/symbols/capslock
Normal file
@@ -0,0 +1,108 @@
|
||||
default hidden partial modifier_keys
|
||||
xkb_symbols "capslock" {
|
||||
replace key <CAPS> { [ Caps_Lock ], type[group1] = "ONE_LEVEL" };
|
||||
modifier_map Lock { Caps_Lock };
|
||||
};
|
||||
|
||||
hidden partial modifier_keys
|
||||
xkb_symbols "shiftlock" {
|
||||
replace key <CAPS> { [ Shift_Lock ], type[group1] = "ONE_LEVEL" };
|
||||
modifier_map Shift { Shift_Lock };
|
||||
};
|
||||
|
||||
hidden partial modifier_keys
|
||||
xkb_symbols "swapescape" {
|
||||
key <CAPS> { [ Escape ], type[group1] = "ONE_LEVEL" };
|
||||
key <ESC> { [ Caps_Lock ] };
|
||||
};
|
||||
|
||||
hidden partial modifier_keys
|
||||
xkb_symbols "escape" {
|
||||
key <CAPS> { [ Escape ], type[group1] = "ONE_LEVEL" };
|
||||
};
|
||||
|
||||
hidden partial modifier_keys
|
||||
xkb_symbols "escape_shifted_capslock" {
|
||||
key <CAPS> {
|
||||
type[Group1] = "TWO_LEVEL",
|
||||
symbols[Group1] = [ Escape, Caps_Lock ],
|
||||
actions[Group1] = [ NoAction(), LockMods(modifiers = Lock) ]
|
||||
};
|
||||
};
|
||||
|
||||
hidden partial modifier_keys
|
||||
xkb_symbols "escape_shifted_compose" {
|
||||
key <CAPS> {
|
||||
type[Group1] = "TWO_LEVEL",
|
||||
symbols[Group1] = [ Escape, Multi_key ],
|
||||
actions[Group1] = [ NoAction(), NoAction() ]
|
||||
};
|
||||
};
|
||||
|
||||
hidden partial modifier_keys
|
||||
xkb_symbols "backspace" {
|
||||
key <CAPS> { [ BackSpace ], type[group1] = "ONE_LEVEL" };
|
||||
};
|
||||
|
||||
hidden partial modifier_keys
|
||||
xkb_symbols "super" {
|
||||
key <CAPS> { [ Super_L ], type[group1] = "ONE_LEVEL" };
|
||||
modifier_map Mod4 { <CAPS> };
|
||||
};
|
||||
|
||||
hidden partial modifier_keys
|
||||
xkb_symbols "hyper" {
|
||||
key <CAPS> { [ Hyper_L ], type[group1] = "ONE_LEVEL" };
|
||||
modifier_map Mod4 { <CAPS> };
|
||||
};
|
||||
|
||||
hidden partial modifier_keys
|
||||
xkb_symbols "menu" {
|
||||
key <CAPS> { [ Menu ], type[group1] = "ONE_LEVEL" };
|
||||
};
|
||||
|
||||
hidden partial modifier_keys
|
||||
xkb_symbols "numlock" {
|
||||
key <CAPS> { [ Num_Lock ], type[group1] = "ONE_LEVEL" };
|
||||
};
|
||||
|
||||
// This changes the <CAPS> key to become a Control modifier,
|
||||
// but it will still produce the Caps_Lock keysym; this is
|
||||
// useful for apps that need to distinguish it from usual
|
||||
// Control_L and Control_R.
|
||||
hidden partial modifier_keys
|
||||
xkb_symbols "ctrl_modifier" {
|
||||
replace key <CAPS> {
|
||||
type[Group1] = "ONE_LEVEL",
|
||||
symbols[Group1] = [ Caps_Lock ],
|
||||
actions[Group1] = [ SetMods(modifiers=Control) ]
|
||||
};
|
||||
modifier_map Control { <CAPS> };
|
||||
};
|
||||
|
||||
hidden partial modifier_keys
|
||||
xkb_symbols "none" {
|
||||
key <CAPS> { [ VoidSymbol ], type[group1] = "ONE_LEVEL" };
|
||||
};
|
||||
|
||||
// For layouts having digits on the 2nd level on the digits row and key type
|
||||
// FOUR_LEVEL (e.g. fr(basic) and be(basic)), this makes CapsLock give the digits
|
||||
// by changing their key type to FOUR_LEVEL_SEMIALPHABETIC. Note that this has the
|
||||
// drawback that the uppercases À, È, É and Ç are no longer available, as those
|
||||
// layouts rely on internal capitalization rules for those letters.
|
||||
hidden partial alphanumeric_keys
|
||||
xkb_symbols "digits_row" {
|
||||
key.type[group1] = "FOUR_LEVEL_SEMIALPHABETIC";
|
||||
|
||||
// No symbol defined: we just want to change the key type
|
||||
key <AE01> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
|
||||
key <AE02> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
|
||||
key <AE03> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
|
||||
key <AE04> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
|
||||
key <AE05> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
|
||||
key <AE06> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
|
||||
key <AE07> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
|
||||
key <AE08> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
|
||||
key <AE09> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
|
||||
key <AE10> { [ NoSymbol, NoSymbol, NoSymbol, NoSymbol ] };
|
||||
};
|
||||
Reference in New Issue
Block a user