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.
# See: man 5 gitignore.
*.a
*.elc
*.exe
*.dll
*.ocx
*.lib
*.o
*.obj
*.py[co]
*.so
*.class
*.jar
*.war
# MSVC ActiveX/COM artefact:
# *_i.c
# *_p.c
# MSVC project files:
*.sln
*.sln.cache
*.ncb
*.vcproj
*.vcproj.*.user
# MSVC precompiled header:
*.pch
# MSVC program database file:
*.pdb
# MSVC type library:
*.tlb
# MSVC build dirs:
[Dd]ebug/
[Rr]elease/
[Oo]bj/
*~