Browse Source
Swap keys using xkb instead of xmodmap
Swap keys using xkb instead of xmodmap
Removed old swap key lines from config and added dir/script to symlink xkb file to lc dir. Fixes issue of having to release keys when starting terminal with xmodmap.red-hat-laptop
Kevin Mok
7 years ago
8 changed files with 120 additions and 44 deletions
-
15aliases/zsh_aliases
-
11configs/set-config-dirs.sh
-
13configs/set-configs.sh
-
3dotfiles/Xresources
-
1dotfiles/vimrc
-
23dotfiles/zshrc
-
87xkb/NZXT-pc
-
11xkb/set-layouts.sh
@ -1,11 +0,0 @@ |
|||
# Get directory variables from script. |
|||
. ../dirs.sh |
|||
# List of config dirs in system config dir that I want to link to. |
|||
# config_dirs=(neofetch i3 i3blocks sam-i3blocks ranger) |
|||
config_dirs=(neofetch i3 i3blocks ranger) |
|||
for cur_dir in $config_dirs; do |
|||
# Remove system file. |
|||
rm -rf "$sys_config_dir"/"$cur_dir" |
|||
# Link config file in repository to system config location. |
|||
ln -s "$config_dir"/"$pc"/"$cur_dir" "$sys_config_dir"/"$cur_dir" |
|||
done |
@ -1,12 +1,11 @@ |
|||
# Get directory variables from script. |
|||
. ../dirs.sh |
|||
# List of config files in system config dir that I want to link to. |
|||
config_files="neofetch/config.conf i3/config i3blocks/i3blocks.conf "\ |
|||
"sam-i3blocks/sam-i3blocks.conf" |
|||
for file in $config_files; do |
|||
# List of config dirs in system config dir that I want to link to. |
|||
# config_dirs=(neofetch i3 i3blocks sam-i3blocks ranger) |
|||
config_dirs=(neofetch i3 i3blocks ranger) |
|||
for cur_dir in $config_dirs; do |
|||
# Remove system file. |
|||
rm "$sys_config_dir"/"$file" |
|||
rm -rf "$sys_config_dir"/"$cur_dir" |
|||
# Link config file in repository to system config location. |
|||
ln -s "$config_dir"/"$pc"/$(echo "$file" | cut -d'/' -f 1).conf \ |
|||
"$sys_config_dir"/"$file" |
|||
ln -s "$config_dir"/"$pc"/"$cur_dir" "$sys_config_dir"/"$cur_dir" |
|||
done |
@ -0,0 +1,87 @@ |
|||
default partial alphanumeric_keys modifier_keys |
|||
xkb_symbols "pc105" { |
|||
|
|||
key <ESC> { [ Escape ] }; |
|||
|
|||
// The extra key on many European keyboards: |
|||
key <LSGT> { [ less, greater, bar, brokenbar ] }; |
|||
|
|||
// The following keys are common to all layouts. |
|||
key <BKSL> { [ backslash, bar ] }; |
|||
key <SPCE> { [ space ] }; |
|||
|
|||
include "srvr_ctrl(fkey2vt)" |
|||
include "pc(editing)" |
|||
include "keypad(x11)" |
|||
|
|||
key <BKSP> { [ Caps_Lock ] }; |
|||
|
|||
key <TAB> { [ Tab, ISO_Left_Tab ] }; |
|||
key <RTRN> { [ Return ] }; |
|||
|
|||
key <CAPS> { [ BackSpace, BackSpace ] }; |
|||
key <NMLK> { [ Num_Lock ] }; |
|||
|
|||
key <LFSH> { [ Shift_L ] }; |
|||
key <LCTL> { [ Control_L ] }; |
|||
key <LWIN> { [ Super_L ] }; |
|||
|
|||
key <RTSH> { [ Shift_R ] }; |
|||
key <RCTL> { [ Control_R ] }; |
|||
key <RWIN> { [ Super_R ] }; |
|||
key <MENU> { [ Menu ] }; |
|||
|
|||
// Beginning of modifier mappings. |
|||
modifier_map Shift { Shift_L, Shift_R }; |
|||
modifier_map Lock { Caps_Lock }; |
|||
modifier_map Control{ Control_L, Control_R }; |
|||
modifier_map Mod2 { Num_Lock }; |
|||
modifier_map Mod4 { Super_L, Super_R }; |
|||
|
|||
// Fake keys for virtual<->real modifiers mapping: |
|||
key <LVL3> { [ ISO_Level3_Shift ] }; |
|||
key <MDSW> { [ Mode_switch ] }; |
|||
modifier_map Mod5 { <LVL3>, <MDSW> }; |
|||
|
|||
key <ALT> { [ NoSymbol, Alt_L ] }; |
|||
include "altwin(meta_alt)" |
|||
|
|||
key <META> { [ NoSymbol, Meta_L ] }; |
|||
modifier_map Mod1 { <META> }; |
|||
|
|||
key <SUPR> { [ NoSymbol, Super_L ] }; |
|||
modifier_map Mod4 { <SUPR> }; |
|||
|
|||
key <HYPR> { [ NoSymbol, Hyper_L ] }; |
|||
modifier_map Mod4 { <HYPR> }; |
|||
// End of modifier mappings. |
|||
|
|||
key <OUTP> { [ XF86Display ] }; |
|||
key <KITG> { [ XF86KbdLightOnOff ] }; |
|||
key <KIDN> { [ XF86KbdBrightnessDown ] }; |
|||
key <KIUP> { [ XF86KbdBrightnessUp ] }; |
|||
}; |
|||
|
|||
hidden partial alphanumeric_keys |
|||
xkb_symbols "editing" { |
|||
key <PRSC> { |
|||
type= "PC_ALT_LEVEL2", |
|||
symbols[Group1]= [ Print, Sys_Req ] |
|||
}; |
|||
key <SCLK> { [ Scroll_Lock ] }; |
|||
key <PAUS> { |
|||
type= "PC_CONTROL_LEVEL2", |
|||
symbols[Group1]= [ Pause, Break ] |
|||
}; |
|||
key <INS> { [ Insert ] }; |
|||
key <HOME> { [ Home ] }; |
|||
key <PGUP> { [ Prior ] }; |
|||
key <DELE> { [ Delete ] }; |
|||
key <END> { [ End ] }; |
|||
key <PGDN> { [ Next ] }; |
|||
|
|||
key <UP> { [ Up ] }; |
|||
key <LEFT> { [ Left ] }; |
|||
key <DOWN> { [ Down ] }; |
|||
key <RGHT> { [ Right ] }; |
|||
}; |
@ -0,0 +1,11 @@ |
|||
# Get directory variables from script. |
|||
. ../dirs.sh |
|||
|
|||
xkb_config_file_name="pc" |
|||
sys_layout_file="/usr/share/X11/xkb/symbols/$xkb_config_file_name" |
|||
xkb_config_dir="$linux_config_dir/xkb" |
|||
|
|||
# Remove system file. |
|||
sudo rm -rf "$sys_layout_file" |
|||
# Link config file in repository to system config location. |
|||
sudo ln -s "$xkb_config_dir"/"$pc"-"$xkb_config_file_name" "$sys_layout_file" |
Write
Preview
Loading…
Cancel
Save
Reference in new issue