# HG changeset patch # User Dave Love # Date 885768908 0 # Node ID aa3481dd4d84de6e0e0b7f5e5f9c46272f7a58ad # Parent 6ebcbdec2e07fdc979fa4911fd20948d2f65081d (imenu-case-fold-search): New buffer-local variable. diff -r 6ebcbdec2e07 -r aa3481dd4d84 lisp/imenu.el --- a/lisp/imenu.el Sun Jan 25 07:20:49 1998 +0000 +++ b/lisp/imenu.el Sun Jan 25 22:55:08 1998 +0000 @@ -186,7 +186,10 @@ (\"*Vars*\" \"^\\\\s-*(def\\\\(var\\\\|const\\\\)\\\\s-+\\\\([-A-Za-z0-9+]+\\\\)\" 2) (\"*Types*\" \"^\\\\s-*(def\\\\(type\\\\|struct\\\\|class\\\\|ine-condition\\\\)\\\\s-+\\\\([-A-Za-z0-9+]+\\\\)\" 2)) -The variable is buffer-local.") +The variable is buffer-local. + +The variable `imenu-case-fold-search' determines whether or not the +regexp matches are case sensitive.") ;;;###autoload (make-variable-buffer-local 'imenu-generic-expression) @@ -679,6 +682,15 @@ ;;; Generic index gathering function. ;;; +(defvar imenu-case-fold-search t + "Defines whether `imenu--generic-function' should fold case when matching. + +This buffer-local variable should be set (only) by initialization code +for modes which use `imenu--generic-function'. If it is not set, that +function will use the current value of `case-fold-search' to match +patterns.") +(make-variable-buffer-local 'imenu-case-fold-search) + (defun imenu--generic-function (patterns) ;; Built on some ideas that Erik Naggum once posted ;; to comp.emacs @@ -719,7 +731,8 @@ (function (lambda (pattern) (identity (cadr pattern)))) patterns "\\)\\|\\(") "\\)")) - prev-pos) + prev-pos + (case-fold-search imenu-case-fold-search)) (goto-char (point-max)) (imenu-progress-message prev-pos 0 t)