Subject: bug#3640: I can't see all characters in my files anymore

From: [email-masked]
Date: Tue, 23 Jun 2009 10:44:12 +0800

OK, I cooked up this workaround in .emacs:

;;Just to see if there are any zero width >‎<, U+200E LEFT-TO-RIGHT MARK
;;hiding in our files, we do:
(global-whitespace-mode 1)
(setq whitespace-style '(spaces))
;;Set neighbor characters on fire in order to see where the
;;"invisible man" is:
(setq whitespace-space-regexp "\\(.?\x200E+.?\\)")
(put 'whitespace-space-before-tab 'face-alias 'whitespace-space);fire color
;;Works except if it is the only char on a line. (In emacs -nw it is
;;width 1, not zero, for me.)

What a pain. But then to turn it on in emacs-w3m,
(add-hook 'w3m-mode-hook
	  (lambda ()
	    (whitespace-mode 1)))
But that kills all of emacs-w3m's font-locks.

Why can't there be a way to not allow any "invisible man" characters
from hiding, like it was in emacs22. Just make them show up as this
dotted box like in xterm, so we know something is funny there.
Is there some variable that can stop 0 width characters being smuggled
around under the users' noses unaware?

I mean isn't that what separates us from the MicroSoft users, they don't
know what is going on inside their files, but we do -- until now.