Mercurial > emacs
changeset 45326:892ea515fb3a
(find-function-search-for-symbol): Find funs defined with defun-cvs-mode.
(find-function-space-re): New const. Skips comments as well.
(find-function-regexp, find-variable-regexp): Use it.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Thu, 16 May 2002 20:11:23 +0000 |
parents | 8b7e7b9551fe |
children | a26906178331 |
files | lisp/emacs-lisp/find-func.el |
diffstat | 1 files changed, 8 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/emacs-lisp/find-func.el Thu May 16 20:03:52 2002 +0000 +++ b/lisp/emacs-lisp/find-func.el Thu May 16 20:11:23 2002 +0000 @@ -54,14 +54,17 @@ ;; :prefix "find-function" :group 'lisp) +(defconst find-function-space-re "\\(?:\\s-\\|\n\\|;.*\n\\)+") + (defcustom find-function-regexp ;; Match things like (defun foo ...), (defmacro foo ...), ;; (define-skeleton foo ...), (define-generic-mode 'foo ...), ;; (define-derived-mode foo ...), (define-minor-mode foo) - "^\\s-*(\\(def\\(ine-skeleton\\|ine-generic-mode\\|ine-derived-mode\\|\ + (concat + "^\\s-*(\\(def\\(ine-skeleton\\|ine-generic-mode\\|ine-derived-mode\\|\ \[^cgv\W]\\w+\\*?\\)\\|define-minor-mode\ -\\|easy-mmode-define-global-mode\\)\\(\\s-\\|\n\\)+\\('\\|\(quote \\)?\ -%s\\(\\s-\\|$\\|\(\\|\)\\)" +\\|easy-mmode-define-global-mode\\)" find-function-space-re + "\\('\\|\(quote \\)?%s\\(\\s-\\|$\\|\(\\|\)\\)") "The regexp used by `find-function' to search for a function definition. Note it must contain a `%s' at the place where `format' should insert the function name. The default value avoids `defconst', @@ -73,7 +76,7 @@ :version "21.1") (defcustom find-variable-regexp - "^\\s-*(def[^umag]\\(\\w\\|\\s_\\)+\\*?\\s-+%s\\(\\s-\\|$\\)" + (concat"^\\s-*(def[^umag]\\(\\w\\|\\s_\\)+\\*?" find-function-space-re "%s\\(\\s-\\|$\\)") "The regexp used by `find-variable' to search for a variable definition. It should match right up to the variable name. The default value avoids `defun', `defmacro', `defalias', `defadvice', `defgroup'. @@ -145,7 +148,7 @@ (goto-char (point-min)) (if (or (re-search-forward regexp nil t) (re-search-forward - (concat "^([^ ]+\\(\\s-\\|\n\\)+" + (concat "^([^ ]+" find-function-space-re "['(]" (regexp-quote (symbol-name symbol)) "\\>") nil t))