martin rudalics <[EMAIL PROTECTED]> writes:
>  > I am of the mind that having indent-tabs-mode set to nil should be
>  > sufficient to disable this behavior.
>
> This should be handled by
>
> (defcustom whitespace-check-indent-whitespace indent-tabs-mode
>    "Flag to check indentation whitespace.  This is the global for the system.

That fails to do the right thing if the user changes indent-tabs-mode
mode after whitespace.el is loaded -- which is certainly not unlikely,
especially given that indent-tabs-mode is automatically buffer local,
and traditionally set on a per-buffer basis!

In general, using another variable as the initial value in a
defvar/defcustom is almost never the right thing for exactly this
reason.

The right thing to do with whitespace.el is probably support a special `auto'
value for such settings.  For instance, in `whitespace-cleanup-internal',
instead of just checking the value of `whitespace-check-buffer-indent' (the
"local" version of `whitespace-check-indent-whitespace'), it could do
something like:

   (if (eq whitespace-check-buffer-indent 'auto)
       indent-tabs-mode
     whitespace-check-buffer-indent)

[Incidentally, whitespace.el seems absurdly overspeced in many ways --
is it really necessary to have separate names for the global and local
versions of every config variable, and a toggle function for just about
every whitespace option?!?]

-Miles

-- 
My books focus on timeless truths.  -- Donald Knuth


_______________________________________________
emacs-pretest-bug mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/emacs-pretest-bug

Reply via email to