Saad Attieh Saad Attieh - 1 year ago 191
LaTeX Question

Set variable under specific mode emacs

Looking to set a variable under latex mode. The idea is that the value set under latex mode will override the value of the same variable set in the customise section. I am very new to emacs so these are my attempts:

(add-hook 'LaTeX-mode-hook '(setq line-move-visual t))
(add-hook 'latex-mode-hook (lambda () (setq line-move-visual t)))

Why do these not work? What should I do instead?

Clarification: looking to set the variable (setq line-move-visual t) as I have it as (setq line-move-visual nil) for all other files

Answer Source

If you just setq the variable in your LaTeX-mode-hook it will also have an effect on any other open buffer. It is possible to make the change only effect the current buffer:

(add-hook 'LaTeX-mode-hook
      (lambda ()
        (make-variable-buffer-local 'line-move-visual)
        (setq line-move-visual nil)))

Also, please note that the hook for the default mode for LaTeX in Emacs is called latex-mode-hook but the hook when you are using the (far superior) AUCTeX is called LaTeX-mode-hook

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download