better tab space handling