From 7830c895a2d36ef47f38f9284c96a506731f3981 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Thu, 29 Apr 2004 19:09:20 +0000 Subject: [PATCH] (cfengine-mode): Accept a terminal (). --- lisp/info-look.el | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/lisp/info-look.el b/lisp/info-look.el index 8e09f326019..644ee3d6c20 100644 --- a/lisp/info-look.el +++ b/lisp/info-look.el @@ -887,11 +887,21 @@ Return nil if there is nothing appropriate in the buffer near point." ((string-equal item "gawk, versions of, information about, printing") "gawk")))))) +;; This misses some things which occur as node names but not in the +;; index. Unfortunately it also picks up the wrong one of multiple +;; entries for the same term in some cases. --fx (info-lookup-maybe-add-help :mode 'cfengine-mode - :regexp "[[:alnum:]_]+" - :doc-spec '(("(cfengine-Reference)Variable Index" nil - "^ - [^:]+:[ ]+\\(\\[[^=]*=[ ]+\\)?" nil))) + :regexp "[[:alnum:]_]+\\(:?()\\)?" + :doc-spec '(("(cfengine-Reference)Variable Index" + (lambda (item) + ;; Index entries may be like `IsPlain()' + (if (string-match "\\([[:alnum:]_]+\\)()" item) + (match-string 1 item) + item)) + ;; This gets functions in evaluated classes. Other + ;; possible patterns don't seem to work too well. + "`" "("))) (provide 'info-look) -- 2.39.5