* Different options for different modes? @ 2011-09-23 14:24 winkerbean 2012-03-29 9:51 ` Philipp Haselwarter [not found] ` <mailman.53.1333014742.20052.help-gnu-emacs@gnu.org> 0 siblings, 2 replies; 4+ messages in thread From: winkerbean @ 2011-09-23 14:24 UTC (permalink / raw) To: help-gnu-emacs Hi, Can Someone point Me in the direction of documentation which shows how to set different options for different modes? (e.g., preserving tabs as tabs in a ruby file while converting tabs to four ' ' characters in a c file) I have searched thru the docs Myself and, though I may have missed it, I did not see the information. I am using 23.3. Thanks in advance. ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Different options for different modes? 2011-09-23 14:24 Different options for different modes? winkerbean @ 2012-03-29 9:51 ` Philipp Haselwarter [not found] ` <mailman.53.1333014742.20052.help-gnu-emacs@gnu.org> 1 sibling, 0 replies; 4+ messages in thread From: Philipp Haselwarter @ 2012-03-29 9:51 UTC (permalink / raw) To: help-gnu-emacs to set options for certain modes emacs uses `hooks', usually following the naming scheme `foo-mode-hook' where "foo" is the mode in question. Check out the section on hooks in the emacs info manual: C-h i m Emacs m Hooks a quick example could be #+begin_src: elisp (defun my-ruby-coding-style nil (setq indent-tabs-mode t)) (defun my-c-coding-style nil (setq indent-tabs-mode nil tab-width 4)) (add-hook 'c-mode-hook 'my-c-coding-style) (add-hook 'ruby-mode-hook 'my-ruby-coding-style) #+end_src -- Philipp Haselwarter ^ permalink raw reply [flat|nested] 4+ messages in thread
[parent not found: <mailman.53.1333014742.20052.help-gnu-emacs@gnu.org>]
* Re: Different options for different modes? [not found] ` <mailman.53.1333014742.20052.help-gnu-emacs@gnu.org> @ 2012-03-29 13:00 ` rusi 2012-04-04 0:59 ` Stefan Monnier 0 siblings, 1 reply; 4+ messages in thread From: rusi @ 2012-03-29 13:00 UTC (permalink / raw) To: help-gnu-emacs Stefan Monnier wrote: > The general approach is to use something like > > (add-hook 'MAJOR-MODE-hook > (lambda () > (set (make-local-variable 'VAR) VAL))) I wonder when this is used and when this: (eval-after-load 'MAJOR_MODE (setq VAR VAL)) ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Different options for different modes? 2012-03-29 13:00 ` rusi @ 2012-04-04 0:59 ` Stefan Monnier 0 siblings, 0 replies; 4+ messages in thread From: Stefan Monnier @ 2012-04-04 0:59 UTC (permalink / raw) To: help-gnu-emacs >> (add-hook 'MAJOR-MODE-hook >> (lambda () >> (set (make-local-variable 'VAR) VAL))) > I wonder when this is used and when this: > (eval-after-load 'MAJOR_MODE (setq VAR VAL)) Your code will be run once when loading the `MAJOR_MODE' package (i.e. usually the first time `MAJOR_MODE' is used), whereas the code I quoted is run every time `MAJOR-MODE' is enabled. If you use Emacs for a single file at a time, the difference between the two may be unnoticeable. But if you do use several files in the same Emacs session (which is the normal way to use Emacs), then the difference is important. Stefan ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2012-04-04 0:59 UTC | newest] Thread overview: 4+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2011-09-23 14:24 Different options for different modes? winkerbean 2012-03-29 9:51 ` Philipp Haselwarter [not found] ` <mailman.53.1333014742.20052.help-gnu-emacs@gnu.org> 2012-03-29 13:00 ` rusi 2012-04-04 0:59 ` Stefan Monnier
Code repositories for project(s) associated with this external index https://git.savannah.gnu.org/cgit/emacs.git https://git.savannah.gnu.org/cgit/emacs/org-mode.git This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.