summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2012-11-28 20:13:33 -0500
committerGlenn Morris <rgm@gnu.org>2012-11-28 20:13:33 -0500
commite9df8f871daa11c02b4e44a8a54584c39abd6fec (patch)
treee71c463736756cacff828ee9327f6f5f80d8cfff /lisp
parent4a9204fe04dee76dd067aaf1b078a777d1bb1a91 (diff)
downloademacs-e9df8f871daa11c02b4e44a8a54584c39abd6fec.tar.gz
By default, ignore case when testing inhibit-local-variables (bug#10610)
* lisp/files.el (inhibit-local-variables-ignore-case): New. (inhibit-local-variables-p): Use inhibit-local-variables-ignore-case. Doc fix. (inhibit-local-variables-regexps, inhibit-local-variables-suffixes): Doc fixes.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog8
-rw-r--r--lisp/files.el18
2 files changed, 20 insertions, 6 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 1ec3c88fbc2..5d376ceabc3 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,11 @@
+2012-11-29 Glenn Morris <rgm@gnu.org>
+
+ * files.el (inhibit-local-variables-ignore-case): New. (Bug#10610)
+ (inhibit-local-variables-p): Use inhibit-local-variables-ignore-case.
+ Doc fix.
+ (inhibit-local-variables-regexps, inhibit-local-variables-suffixes):
+ Doc fixes.
+
2012-11-28 Jay Belanger <jay.p.belanger@gmail.com>
* calc/calc-forms.el (calc-date-notation): Fix regexp
diff --git a/lisp/files.el b/lisp/files.el
index 496f9bf8fa4..c22cfd69549 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -2502,25 +2502,31 @@ They may happen to contain sequences that look like local variable
specifications, but are not really, or they may be containers for
member files with their own local variable sections, which are
not appropriate for the containing file.
-See also `inhibit-local-variables-suffixes'.")
+The function `inhibit-local-variables-p' uses this.")
(define-obsolete-variable-alias 'inhibit-first-line-modes-suffixes
'inhibit-local-variables-suffixes "24.1")
(defvar inhibit-local-variables-suffixes nil
"List of regexps matching suffixes to remove from file names.
-When checking `inhibit-local-variables-regexps', we first discard
-from the end of the file name anything that matches one of these regexps.")
+The function `inhibit-local-variables-p' uses this: when checking
+a file name, it first discards from the end of the name anything that
+matches one of these regexps.")
+
+;; Can't think of any situation in which you'd want this to be nil...
+(defvar inhibit-local-variables-ignore-case t
+ "Non-nil means `inhibit-local-variables-p' ignores case.")
-;; TODO explicitly add case-fold-search t?
(defun inhibit-local-variables-p ()
"Return non-nil if file local variables should be ignored.
This checks the file (or buffer) name against `inhibit-local-variables-regexps'
-and `inhibit-local-variables-suffixes'."
+and `inhibit-local-variables-suffixes'. If
+`inhibit-local-variables-ignore-case' is non-nil, this ignores case."
(let ((temp inhibit-local-variables-regexps)
(name (if buffer-file-name
(file-name-sans-versions buffer-file-name)
- (buffer-name))))
+ (buffer-name)))
+ (case-fold-search inhibit-local-variables-ignore-case))
(while (let ((sufs inhibit-local-variables-suffixes))
(while (and sufs (not (string-match (car sufs) name)))
(setq sufs (cdr sufs)))