Change rules size only on SIGWINCH.
$COLUMNS isn't updated on SIGWINCH yet so "tput" is used.
For better performance ruler is calculated by substring.
Moving ruler handler to trap cleans console from garbage when "set -x" is set
in interactive session. It is useful during debugging of bash completion.
! To load this config run:
! $ xmodmap .xmodmaprc
keycode 133 = Super_L
keycode 134 = Hyper_L
! keycode 135 = Menu
clear mod3
clear mod4
add mod3 = Super_L
add mod4 = Hyper_L
! Delete CapsLock (map to Ctrl).
clear Lock
clear Control
! keycode 66 = Caps_Lock
keysym Caps_Lock = Control_L
add Control = Control_L Control_R
keycode 94 = Mode_switch