[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [unicode-2] whitespace-auto-cleanup always replaces leading spaces w
From: |
martin rudalics |
Subject: |
Re: [unicode-2] whitespace-auto-cleanup always replaces leading spaces with tabs |
Date: |
Mon, 09 Apr 2007 10:51:42 +0200 |
User-agent: |
Mozilla Thunderbird 1.0 (Windows/20041206) |
>>(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!
I have to admit that I wanted the original poster to describe exactly
this sequence of events.
> In general, using another variable as the initial value in a
> defvar/defcustom is almost never the right thing for exactly this
> reason.
In particular if the variable comes from another group.
> 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)
IMHO there's no reasonable way to reconcile a user's settings of
`indent-tabs-mode' with those of `whitespace-check-indent-whitespace'.
I think `whitespace-indent-cleanup' should be executed iff
`indent-tabs-mode' is non-nil in the current buffer. But I'm afraid
that anything we change here will break existing customizations.
> [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?!?]
After the release we should probably distill a simple and robust
implementation.
- [unicode-2] whitespace-auto-cleanup always replaces leading spaces with tabs, Braden McDaniel, 2007/04/06
- Re: [unicode-2] whitespace-auto-cleanup always replaces leading spaces with tabs, martin rudalics, 2007/04/07
- Re: [unicode-2] whitespace-auto-cleanup always replaces leading spaces with tabs, Miles Bader, 2007/04/09
- Re: [unicode-2] whitespace-auto-cleanup always replaces leading spaces with tabs,
martin rudalics <=
- Re: [unicode-2] whitespace-auto-cleanup always replaces leading spaces with tabs, Braden McDaniel, 2007/04/11
- Re: [unicode-2] whitespace-auto-cleanup always replaces leading spaces with tabs, martin rudalics, 2007/04/11
- Re: [unicode-2] whitespace-auto-cleanup always replaces leading spaces with tabs, Braden McDaniel, 2007/04/21
- Re: [unicode-2] whitespace-auto-cleanup always replaces leading spaces with tabs, martin rudalics, 2007/04/22
- Re: [unicode-2] whitespace-auto-cleanup always replaces leading spaces with tabs, Braden McDaniel, 2007/04/23
- Re: [unicode-2] whitespace-auto-cleanup always replaces leading spaces with tabs, martin rudalics, 2007/04/24