emacs-devel
[Top][All Lists]
Advanced

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

RE: new buffer - should its mode reflect its name when the name matches


From: Drew Adams
Subject: RE: new buffer - should its mode reflect its name when the name matches auto-mode-alist?
Date: Wed, 23 Sep 2009 20:14:14 -0700

> >>> Haven't thought about this before, but I wonder if the mode 
> >>> should respect auto-mode-alist when you create a new buffer?
> >>> There's no doubt a good reason or
> >>> two why we don't do this - just wondering.
> >>>
> >>> E.g. `C-x b foo.el', where there is no existing buffer 
> >>> foo.el. The mode is
> >>> Fundamental; should it be Emacs-Lisp instead?
> >>>
> >>> (I realize that a new buffer need not be intended to be 
> >>> saved as a file.)
> >>>
> >> As an end-user and not having contributed anything to 
> >> Emacs myself, I would expect the buffer to "respect"
> >> auto-mode-alist, i.e. set the mode depending on the
> >> buffer name. However, I think the default behavior when
> >> creating buffers non-interactively should *not* respect
> >> auto-mode-alist.
> > 
> > Yes, I meant interactively only, but should have made that 
> > clear. Thx.
> 
> I think I posted this in response to a request on 
> gnu.emacs.help, back around 2008-11-18, but I can't find it
> via Google:
> 
> (defadvice switch-to-buffer (around interactive-normal-mode activate)
>    "When called interactively to create a new buffer not 
> visiting a file, temporarily bind `buffer-file-name' and call
> `normal-mode'."
>    (let ((existing-buffer (get-buffer (ad-get-arg 0))))
>      ad-do-it
>      (when (and (interactive-p)
>              (null existing-buffer)
>              (null buffer-file-name))
>        (let ((buffer-file-name (expand-file-name (buffer-name))))
>       (normal-mode)))))
> 
> Not appropriate for src/buffer.c of course, but you get the idea.

Yes, you did - I see it now. You posted it on 2009-11-18, with Subject "emacs
mode line suggestions".





reply via email to

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