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.
plain=normal
newtext=darkgreen
oldtext=darkred
diffstuff=magenta
cvsstuff=darkblue