From 73f48953972a8fd51b23c559b291ec69e73668b6 Mon Sep 17 00:00:00 2001 From: Dave Love Date: Sun, 25 Jan 1998 22:55:08 +0000 Subject: [PATCH] (imenu-case-fold-search): New buffer-local variable. --- lisp/imenu.el | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/lisp/imenu.el b/lisp/imenu.el index a054c756a23..eeaae1670fa 100644 --- a/lisp/imenu.el +++ b/lisp/imenu.el @@ -186,7 +186,10 @@ For emacs-lisp-mode for example PATTERN would look like: (\"*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 @@ Their results are gathered into an index alist." ;;; 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 @@ pattern. (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) -- 2.39.2