[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/lisp/files.el
From: |
Kim F . Storm |
Subject: |
[Emacs-diffs] Changes to emacs/lisp/files.el |
Date: |
Mon, 01 Nov 2004 18:27:37 -0500 |
Index: emacs/lisp/files.el
diff -c emacs/lisp/files.el:1.717 emacs/lisp/files.el:1.718
*** emacs/lisp/files.el:1.717 Mon Nov 1 07:56:17 2004
--- emacs/lisp/files.el Mon Nov 1 23:16:42 2004
***************
*** 1896,1902 ****
(if (not (functionp mode))
(message "Ignoring unknown mode `%s'" mode)
(setq done t)
! (or (set-auto-mode-0 mode)
(throw 'nop nil)))))
;; If we didn't, look for an interpreter specified in the first line.
;; As a special case, allow for things like "#!/bin/env perl", which
--- 1896,1902 ----
(if (not (functionp mode))
(message "Ignoring unknown mode `%s'" mode)
(setq done t)
! (or (set-auto-mode-0 mode keep-mode-if-same)
(throw 'nop nil)))))
;; If we didn't, look for an interpreter specified in the first line.
;; As a special case, allow for things like "#!/bin/env perl", which
***************
*** 1911,1917 ****
done (assoc (file-name-nondirectory mode)
interpreter-mode-alist))
;; If we found an interpreter mode to use, invoke it now.
! (if done (set-auto-mode-0 (cdr done))))
(if (and (not done) buffer-file-name)
(let ((name buffer-file-name))
;; Remove backup-suffixes from file name.
--- 1911,1917 ----
done (assoc (file-name-nondirectory mode)
interpreter-mode-alist))
;; If we found an interpreter mode to use, invoke it now.
! (if done (set-auto-mode-0 (cdr done) keep-mode-if-same)))
(if (and (not done) buffer-file-name)
(let ((name buffer-file-name))
;; Remove backup-suffixes from file name.
***************
*** 1930,1956 ****
(when mode
(if xml (or (memq mode xml-based-modes)
(setq mode 'xml-mode)))
! (set-auto-mode-0 mode)
(setq done t)))))
(and xml
(not done)
! (set-auto-mode-0 'xml-mode))))
;; When `keep-mode-if-same' is set, we are working on behalf of
;; set-visited-file-name. In that case, if the major mode specified is the
;; same one we already have, don't actually reset it. We don't want to lose
;; minor modes such as Font Lock.
! (defun set-auto-mode-0 (mode)
"Apply MODE and return it.
! If `keep-mode-if-same' is non-nil MODE is chased of any aliases and
! compared to current major mode. If they are the same, do nothing
! and return nil."
(when keep-mode-if-same
(while (symbolp (symbol-function mode))
(setq mode (symbol-function mode)))
(if (eq mode major-mode)
! (setq mode)))
(when mode
(funcall mode)
mode))
--- 1930,1956 ----
(when mode
(if xml (or (memq mode xml-based-modes)
(setq mode 'xml-mode)))
! (set-auto-mode-0 mode keep-mode-if-same)
(setq done t)))))
(and xml
(not done)
! (set-auto-mode-0 'xml-mode keep-mode-if-same))))
;; When `keep-mode-if-same' is set, we are working on behalf of
;; set-visited-file-name. In that case, if the major mode specified is the
;; same one we already have, don't actually reset it. We don't want to lose
;; minor modes such as Font Lock.
! (defun set-auto-mode-0 (mode &optional keep-mode-if-same)
"Apply MODE and return it.
! If optional arg KEEP-MODE-IF-SAME is non-nil, MODE is chased of
! any aliases and compared to current major mode. If they are the
! same, do nothing and return nil."
(when keep-mode-if-same
(while (symbolp (symbol-function mode))
(setq mode (symbol-function mode)))
(if (eq mode major-mode)
! (setq mode nil)))
(when mode
(funcall mode)
mode))
- [Emacs-diffs] Changes to emacs/lisp/files.el, John Paul Wallington, 2004/11/01
- [Emacs-diffs] Changes to emacs/lisp/files.el,
Kim F . Storm <=
- [Emacs-diffs] Changes to emacs/lisp/files.el, Jan Djärv, 2004/11/02
- [Emacs-diffs] Changes to emacs/lisp/files.el, Daniel Pfeiffer, 2004/11/03
- [Emacs-diffs] Changes to emacs/lisp/files.el, Richard M . Stallman, 2004/11/04
- [Emacs-diffs] Changes to emacs/lisp/files.el, Daniel Pfeiffer, 2004/11/04
- [Emacs-diffs] Changes to emacs/lisp/files.el, Daniel Pfeiffer, 2004/11/09
- [Emacs-diffs] Changes to emacs/lisp/files.el, Daniel Pfeiffer, 2004/11/10
- [Emacs-diffs] Changes to emacs/lisp/files.el, Stefan Monnier, 2004/11/10
- [Emacs-diffs] Changes to emacs/lisp/files.el, Juri Linkov, 2004/11/11
- [Emacs-diffs] Changes to emacs/lisp/files.el, Daniel Pfeiffer, 2004/11/14
- [Emacs-diffs] Changes to emacs/lisp/files.el, Luc Teirlinck, 2004/11/14