Questions tagged [buffer-local]
The buffer-local tag has no usage guidance.
56
questions
0
votes
2
answers
34
views
cannot use buffer-local variables after defining them
I'm trying to define a buffer-local variable inside a function using setq-local in a function
here is the function definition:
(defun set-buffer-local-variable ()
(with-current-buffer (get-buffer-...
1
vote
1
answer
50
views
Is there a reason for having beginning-of-defun-function/end-of-defun-function global?
I was working on a mode, setq'ed them with my functions and... emacs broke (really)
For some reason these variable are global. I made them buffer-local, but is there a good reason for having them ...
3
votes
1
answer
110
views
How can I set a buffer-local variable (format-all-mode) to nil within .dir-locals.el? (using Doom emacs)
I have a project where I want to disable format-all-mode for all my python files. I can do this manually by running M-x format-all-mode every time I open up a python file for that project.
I tried ...
2
votes
1
answer
57
views
`make-local-variable` Behaves Differently depending on Whether Variable is Special
Two examples (both are in the *scratch* buffer and under lexical scoping rule):
_
(setq xx :default)
(let ((xx :let))
(with-current-buffer (get-buffer-create "tmp")
(make-local-...
3
votes
1
answer
96
views
Make a Variable Buffer-Local within a Let-Binding
12.11.2 Creating and Deleting Buffer-Local Bindings:
Making a variable buffer-local within a let-binding for that variable does not work reliably, unless the buffer in which you do this is not ...
0
votes
0
answers
313
views
Warning: ‘buffer-local-value’ is an obsolete generalized variable in Emacs 29
In Emacs 29.0.60,
(setf (buffer-local-value 'foo (current-buffer)) 42)
produces the warning above.
What's the recommended way of changing a buffer-local variable in another buffer? (the above is an ...
2
votes
2
answers
37
views
Can I bind a key as buffer local but not in the active keymap?
So I'm writing some custom functions to help me editing some guitar chords using LaTeX's songs package. I find convenient to rebind isearch-exit, so that when I press RET, the cursor is left at the ...
0
votes
0
answers
46
views
Function that gets the working value of a buffer local variable
I want to write a function that gets the working value of a buffer local variable. Customarily if a buffer local variables is not defined, it might have a default
value set up.
1
vote
2
answers
160
views
How to set a variable on a single buffer?
To set functions on a local buffer I use the following technique:
* Local Variables :noexport:
# Local Variables:
# eval: (view-mode 1)
# eval: (visual-line-mode 0)
...
# End:
However, when I try to ...
0
votes
1
answer
68
views
setq versus setq-local for tab-always-indent
Have found the tab-always-indent setting and wonder the appropriateness of
(setq tab-always-indent 'complete)
versus
(setq-local tab-always-indent 'complete)
1
vote
0
answers
45
views
How can I change buffer local key binding C-h, C-x, M-x in term raw mode?
I'm running a specific console application in a term window (char/raw mode).
This application has no need for C-h, C-x, and M-x,
so they should just do what they always do in Emacs.
However, I don't ...
1
vote
1
answer
31
views
How to provide my own ediff-make-wide-display-function for ediff
For Ediff's wide display feature I like to use my own ediff-make-wide-display function. Ediff has a variable for this: ediff-make-wide-display-function. However when I write:
(defun my-ediff-make-wide-...
0
votes
1
answer
138
views
How to know (in Elisp) what buffer was current when a command is invoked?
I want to give an arbitrary command some buffer-local
behavior without advising it. (I can do it by advising, but I want to also be able to do it without
advising.)
E.g., just looking at some ...
2
votes
1
answer
34
views
Cannot get a symbol's value for the first time when using `setq-default`
I can use setq-default to set a symbol's default value, as follows:
(with-temp-buffer
(make-local-variable 'bar)
(setq-default bar "xyz")
(symbol-value 'bar))
When I first executed ...
1
vote
2
answers
400
views
Defining minor-mode buffer-local variables
I want to do something VERY simple. I want to create a minor mode, which when enabled sets a buffer-local variable (say left-margin-width, for instance) with a specific value.
I can do this:
(define-...
0
votes
0
answers
35
views
Why won't emacs permanently save my buffer-local var?
For many files I have file-local variables which asked me once if they were safe and I could add them permanently to my "trusted" list, never to be asked again. However, I get asked every ...
1
vote
1
answer
315
views
setq in init file not overriding the default for indent-tabs-mode
It works when using setq-default in place of setq or when customizing through C-h v. C-h v reports that it is set in 'C source code'.
I was thinking it might be affected by my c-default-style, but my ...
0
votes
0
answers
64
views
Highlight matching parenthesis, only in Lisp mode (and maybe a few similar modes)
is there a way to have the global minor mode show-paren-mode
functionality as a buffer-local minor mode? I love its behavior but only for Lisp.
Searching for a package I can see a number of close ...
2
votes
1
answer
309
views
How can I get the effect of buffer-local symbol plist property values?
Does Emacs have a way to set buffer-local properties on symbols?
It's well-known that there are buffer-local variables. But a property belongs to a symbol, not to a variable. Hence, if I have ...
0
votes
2
answers
94
views
Make/unmake a variable globally buffer-local depending on another variable
I have a package with the variable my-package--my-var that needs to be buffer-local when my-package-buffer-only is t but global if my-package-buffer-only is nil. This is what I have so far:
(...
1
vote
1
answer
388
views
org-mode in-buffer todo setting not working as expected
I am using org-mode TODO tracking change (in-buffer settings) and I'm having some issues. All the info is taken from the official docs (https://orgmode.org/manual/Tracking-TODO-state-changes.html)
I ...
1
vote
3
answers
349
views
Buffer-local input history for read-from-minibuffer
I've been trying to create a command that, when run, calls another function (my-function) which reads from the minibuffer and does some processing on the input. I want the command history for this ...
0
votes
1
answer
213
views
Is it possible to make a function local to the buffer?
I want to override the function helm-swoop-pre-input-optimize in man mode using its hook, but not anywhere else. Is there something similar to make-local-variable for functions?
1
vote
1
answer
271
views
How do I clear a global variable that also is buffer-local?
I called add-hook multiple times because I had a few typos in the hook function, and now there are a bunch of broken copies of it in the hook.
I want to do (setq after-save-hook nil), but after doing ...
1
vote
3
answers
2k
views
How can I change external program to open org URLs for one org file only
In my Emacs config, I have set Firefox to be the browser to open URLs with,
(setq browse-url-browser-function 'browse-url-firefox)
Now, I have one org-mode file, in which I would like to open URLs ...
1
vote
0
answers
126
views
Buffer-local exec-path?
Is there a way to make buffer-local overrides to exec-path (whose value is normally initialized with the PATH environment variable)?
I tried (make-variable-buffer-local 'exec-path) and local ...
1
vote
1
answer
359
views
Have shell inherit buffer local process-environment
I have made buffer local changes to `process-environment' using the technique described in How can I get buffer-local environment variables via .dir-locals. I then call shell from that buffer. If I ...
1
vote
2
answers
2k
views
Buffer-local after-save-hook?
I'd like to register an after-save-hook that is only active in certain buffers that I specify.
For example, assume there are 3 functions currently registered in my after-save-hook: hook-01, hook-02, ...
4
votes
1
answer
810
views
buffer-local advice
I am trying to create a buffer local advice to run some code when a minor mode is disabled. I looked through the documentation for add-function and saw this
If PLACE is a symbol, its `default-value' ...
6
votes
1
answer
2k
views
How can I get buffer-local environment variables via .dir-locals?
I'm using emacs for many different projects. For some of them, I need, for example, different entries in $PATH, or different $MAKEFLAGS, whatever, you name it...
I thought this would be possible ...
5
votes
2
answers
1k
views
Set buffer-local variable in buffer other than the current one?
I'm in buffer A and I want to set a buffer-local variable in buffer B. I'm currently doing:
(with-current-buffer B
(setq-local some-var 'some-val))
but is there a way to do this without changing ...
7
votes
2
answers
951
views
The default value of buffer-local variable not set until first `setq`
Say I define a buffer-local variable foo, and its default value is "a":
(defvar foo "a")
(make-variable-buffer-local 'foo)
(default-value 'foo) ;; => "a"
Immediately after this I run the ...
0
votes
1
answer
201
views
Adding to kill-buffer-hook results in "setq: Wrong type argument"
Subtract a buffer's (the file's) size from a variable before killing it. Emacs 26.
(defvar cumulative-open-bytes '0 )
(defun buffer-settings-calc-bytes ()
(interactive)
(let ((current-open-file-...
2
votes
1
answer
601
views
Making a variable window-local
I am developing a feature to adapt a mode-line to the width of the window. I have developped it so far using buffer-local variables to store the state of the mode-line, however, when I open the same ...
2
votes
0
answers
27
views
How to preserve buffer local variables through `recompile`?
In a compilation buffer, when I set buffer local variable like so:
(setq-local foo 'bar)
Doing a (recompile) will unset this variable.
Is there a way to keep the buffer local value permanent ...
2
votes
1
answer
212
views
Why isn't face-remapping-alist permanent-local by default?
text-scale-mode uses a buffer-local face-remapping-alist to scale the buffer's text, adding values like (:height 1.2). It stores a "cookie" with the scaling it has applied in another local variable, ...
-1
votes
1
answer
348
views
Set a buffer/file local variable in elisp like a file local variable
I'm looking for a way to set a variable that isn't buffer local in such a way that it will act like one.
It's possible to do it with file local variables, but I haven't found a way to set a variable ...
0
votes
1
answer
220
views
Setting hl-line-mode for programming modes
In my init file I have this:
(add-hook 'prog-mode-hook (lambda () (linum-mode 1)))
So it shows line numbers only for programming modes. I tried to do the same with hl-line-mode, but it does not work:...
5
votes
2
answers
2k
views
How to customize major mode initialization with local variables?
Seems like most major modes clear all local variables before initializing. It also seems like many major modes read variables while initializing to customize their behavior.
If I want to set a file ...
1
vote
2
answers
587
views
How to get an insert-text-button 'action property accessing a dynamically-bound buffer-local variable
In realgud I have a text button that needs access to a dynamically-bound buffer-local variable.
The situation occurs like this. Inside one buffer that has the buffer local variable, there is a ...
1
vote
0
answers
523
views
Can I override global-hl-line-mode in a buffer/window?
I have the following line turning hl-line-mode on globally in my init file:
(global-hl-line-mode)
Most of the time, that's how I like it. But sometimes I want to turn it off. I'd hoped that I could ...
22
votes
1
answer
6k
views
What does `setq-local` do, and when should I use it?
I'm not quite clear on all the variations of buffer-local variables, even
after reading all the doc and a bunch of postings here on SX.
Here's a summary of my understandings:
(defvar foo ..) ...
15
votes
1
answer
2k
views
Mark a local variable safe for any value
The variable safe-local-variable-values can store name/value pairs that are safe as file-local or directory-local. However sometimes I want to say any value is valid for a given variable. The manual ...
1
vote
1
answer
106
views
Is it possible to associate minor modes with windows rather than buffers?
Does Emacs have some notion of associating minor modes with windows rather than setting them as "global" or "buffer-local"?
For example, in a certain window layout I may wish to have a minor mode ...
2
votes
1
answer
205
views
Buffer-local hook shadowing default value for subsequently loaded libraries
After having a problem with debugging a package I write, I finally tracked down the problem to the following: auto-revert-mode is making kill-buffer-hook buffer-local (which is fine by me). The ...
3
votes
1
answer
3k
views
Use `.dir-locals.el' to append to `before-save-hook' as a buffer local variable
I want to use .dir-locals.el to append to the before-save-hook in a project for c++ files.
Currently I'm using:
(add-hook 'c++-mode-hook
(lambda ()
(add-hook 'before-save-hook '...
1
vote
1
answer
81
views
How do buffer local bindings go into effect?
I'm learning to program with buffer local variables. The emacs documentation describes buffer local variables as:
A buffer-local variable has a buffer-local binding associated with a particular ...
6
votes
2
answers
2k
views
How do you disable the buffer end/beginning warnings in the minibuffer?
I see that I can do something like this:
(defun limit-warnings ()
(set (make-local-variable 'warning-minimum-level) 'fatal))
(add-hook 'minibuffer-setup-hook 'disable-warnings)
(Sorry for syntax ...
4
votes
1
answer
722
views
How to find out if variable is buffer-local?
I'm trying to get rid of tabs, following this guide:
(setq-default indent-tabs-mode nil)
So: why setq-default and not setq? I know I would need to use setq-default for a buffer-local variable, but I ...
11
votes
2
answers
2k
views
How to Persist Evil Markers?
I want to be able to save my buffer local evil markers (m to mark a location and then ' or ` to jump to it) across emacs sessions/instances. I'm not really sure how to do this. I tried installing/...