I want web-mode-script-padding to be set to 0 at all times.
In my config, I have tried both
(with-eval-after-load 'web-mode (setq web-mode-script-padding 0) )
As well as simply,
(setq web-mode-script-padding 0)
If I open a new window, and then a webmode file, the behavior of pressing TAB and other things indicates that the value is not set how I want it to be (this after reset so my new config is reloaded). So, I do M-x describe-variable web-mode-script-padding. I see:
web-mode-script-padding is a variable defined in ‘web-mode.el’. Its value is 2 Original value was 1 Local in buffer Navbar.vue; global value is 0 This is not what I want. I want the value to be 0.
So I do M-x set-variable web-mode-script-padding 0 in that buffer. Now, describe-variable shows
web-mode-script-padding is a variable defined in ‘web-mode.el’. Its value is 0 Original value was 1 Local in buffer CardList.vue; global value is the same. Furthermore, in this buffer, the script-padding behaves as I want.
However, opening a new buffer means I have to manually set-variable again to maintain this behavior.
How can I either set-variable so it applies to the entire frame, or get my setq in my config to "stick?"
Edit: In case this was a buffer-local variable, I tried setq-default, still not getting the desired behavior though.
setqa variable such that it clobbers any buffer-local values that might exist for that same variable. You either set the global value, or (when in a buffer with a local value) set the current buffer's local value. The point of buffer-local variables is so that you can override the global value.