help-gnu-emacs
[Top][All Lists]
Advanced

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

Re: more issues with setq-local


From: Thibaut Verron
Subject: Re: more issues with setq-local
Date: Tue, 20 Apr 2021 17:48:11 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.7.1

On 2021-04-20 5:10 p.m., Emanuel Berg via Users list for the GNU Emacs text editor wrote:
So, how do you do set `fill-column' to 62 everywhere in Emacs?

`setq' sets it buffer-locally.

And `setq-default' sets it where it isn't set!

But do I set it where it is set? I am to hunt down these
buffers manually?

You could write a loop going over all buffers and doing setq in each of them, if that's really what you want.

But if all you want is to use the default value everywhere, isn't it easier not to set it locally in the first place?


Observe the below [last] Elisp. We see/understand that
fill-column isn't of the "buffer instance metadata" use case.
It is just normal data.

Which might need to be different in different buffers.

The alternative, as you say, is a global variable which users would make local when necessary. I think that the current setting is less destructively dangerous. Imagine for instance someone with a before-save-hook function using fill-column, and accidentally changing the global value...


If one wants that different in
different parts of Emacs, why don't you do as `message-mode'
and get your own variable?

What do you mean? I strongly suspect that what message-mode does is (setq fill-column message-fill-column) at mode initialization.

The variable message-fill-column is given for convenience, ie, so that you can set the fill column for *Messages* by just setting that variable (instead of using, say, a hook). But internally, a buffer-local version of fill-column is created for the *Messages* buffer.

If that's what you mean by "it is set", that some mode is setting the variable, then yes, I suspect that you have no choice but to investigate how to bypass that setting for each mode which gets an incorrect value (or override it manually with a hook).







reply via email to

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