]> code.delx.au - gnu-emacs/commitdiff
(inhibit-local-variables-regexps): New variable.
authorRichard M. Stallman <rms@gnu.org>
Mon, 31 May 1993 21:50:52 +0000 (21:50 +0000)
committerRichard M. Stallman <rms@gnu.org>
Mon, 31 May 1993 21:50:52 +0000 (21:50 +0000)
(set-auto-mode): Handle inhibit-local-variables-regexps.

lisp/files.el

index 83322d05aa221ebd81b06678388628dea9d13ede..33d889dd5f8e8dfeece09ac00eaa3ae025cc42ec 100644 (file)
@@ -790,6 +790,9 @@ Alist of filename patterns vs corresponding major mode functions.
 Each element looks like (REGEXP . FUNCTION).
 Visiting a file whose name matches REGEXP causes FUNCTION to be called.")
 
+(defconst inhibit-local-variables-regexps '("\\.tar$")
+  "List of regexps; if one matches a file name, don't look for local vars.")
+
 (defun set-auto-mode ()
   "Select major mode appropriate for current buffer.
 This checks for a -*- mode tag in the buffer's text, or
@@ -805,6 +808,14 @@ If `enable-local-variables' is nil, this function does not check for a
       (goto-char (point-min))
       (skip-chars-forward " \t\n")
       (if (and enable-local-variables
+              ;; Don't look for -*- if this file name matches any
+              ;; of the regexps in inhibit-local-variables-regexps.
+              (not (let ((temp inhibit-local-variables-regexps))
+                     (while (and temp
+                                 (not (string-match (car temp)
+                                                    buffer-file-name)))
+                       (setq temp (cdr temp)))
+                     (not temp)))
               (search-forward "-*-" (save-excursion
                                       ;; If the file begins with "#!"
                                       ;; (exec interpreter magic), look