Improve char/transpose detection (fix #30)

still very much imperfect, mainly due to Unicode