Move Capslock Remapping to xinitrc
Prevents a new instance of xcape being started with every single shell session (i.e. a lot of sessions with tmux, urxvt, etc.). Instead initializes xcape key replacement once when starting x
This commit is contained in:
parent
1097515a34
commit
39ca1b4d5c
2 changed files with 45 additions and 11 deletions
|
@ -1,11 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
# Remaps Capslock key to control.
|
|
||||||
# (only works for x environment - I haven't needed it for non-x yet)
|
|
||||||
setxkbmap -option ctrl:nocaps
|
|
||||||
|
|
||||||
# Makes Capslock behave as escape - when ONLY capslock is pressed and released
|
|
||||||
# this only works when we already substitute a ctrl for caps with the lines above,
|
|
||||||
# otherwise control itself will act as escape.
|
|
||||||
# Needs xcape package installed. https://github.com/alols/xcape
|
|
||||||
xcape -e 'Control_L=Escape'
|
|
45
.xinitrc
Normal file
45
.xinitrc
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
userresources=$HOME/.Xresources
|
||||||
|
usermodmap=$HOME/.Xmodmap
|
||||||
|
sysresources=/etc/X11/xinit/.Xresources
|
||||||
|
sysmodmap=/etc/X11/xinit/.Xmodmap
|
||||||
|
|
||||||
|
# merge in defaults and keymaps
|
||||||
|
|
||||||
|
if [ -f $sysresources ]; then
|
||||||
|
xrdb -merge $sysresources
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f $sysmodmap ]; then
|
||||||
|
xmodmap $sysmodmap
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f "$userresources" ]; then
|
||||||
|
xrdb -merge "$userresources"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f "$usermodmap" ]; then
|
||||||
|
xmodmap "$usermodmap"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# start some nice programs
|
||||||
|
|
||||||
|
if [ -d /etc/X11/xinit/xinitrc.d ] ; then
|
||||||
|
for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
|
||||||
|
[ -x "$f" ] && . "$f"
|
||||||
|
done
|
||||||
|
unset f
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Remaps Capslock key to control.
|
||||||
|
# (only works for x environment - I haven't needed it for non-x yet)
|
||||||
|
setxkbmap -option ctrl:nocaps
|
||||||
|
|
||||||
|
# Makes Capslock behave as escape - when ONLY capslock is pressed and released
|
||||||
|
# this only works when we already substitute a ctrl for caps with the lines above,
|
||||||
|
# otherwise control itself will act as escape.
|
||||||
|
# Needs xcape package installed. https://github.com/alols/xcape
|
||||||
|
type xcape >/dev/null 2>&1 && xcape -e 'Control_L=Escape'
|
||||||
|
|
||||||
|
type i3 >/dev/null 2>&1 && exec i3
|
Loading…
Reference in a new issue