[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#20322: 25.0.50; indent-tabs-mode should default to nil

From: Dmitry Gutov
Subject: bug#20322: 25.0.50; indent-tabs-mode should default to nil
Date: Tue, 14 Apr 2015 17:14:14 +0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:36.0) Gecko/20100101 Thunderbird/36.0

On 04/14/2015 06:07 AM, Stefan Monnier wrote:

There was probably a reason originally.  Nowadays, I think the main
reason it's t is because there's no sufficiently good reason to change
it (the hypothetical benefit of change will be smaller than the pain of
having to suffer through too many people bitching at the change).

Let's do a trial in master, to see how much bitching this results in? :)

Consider this: when initially diving into Emacs (coming from some experience with two IDEs), I was learning how to configure indentation in different modes. The necessary steps were:

1) Find the variable `indent-tabs-mode'. See it doesn't help with the amount of indentation per level, keep looking. Same with `tab-width'.

2) Find the language-dependent variables (js-indent-level, css-indent-offset and c-basic-offset). It doesn't help that each one is named in a different fashion.

3) Notice that while it almost works like intended, sometimes you get tabs inserted. Go back to `indent-tabs-mode', put `(setq indent-tabs-mode nil)` in the init file, see that it doesn't help.

4) Find out about buffer-local-ness and `setq-default'. That finally does it.

The above steps required certain persistence.

I.e. this is kind of like endianness.

One could say that about any variable with existing default value, no?

I think it's different enough: the current users should know pretty easily how to change it, whereas it's usually a bigger issue for newcomers. Better defaults would result in a better initial experience bringing the adoption up somewhat; on the flip side, I can't imagine anyone quitting Emacs over this default value.

And since this value is not just a user preference (it's project-dependent), even those who prefer tabs have probably had to use a different value at some point. So they know what to change.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]