emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[nongnu] elpa/lua-mode 32b5639 210/468: Fix wrong imenu generic expressi


From: Philip Kaludercic
Subject: [nongnu] elpa/lua-mode 32b5639 210/468: Fix wrong imenu generic expression, add one more regexp to match 'x = function(...)' definitions
Date: Thu, 5 Aug 2021 04:58:38 -0400 (EDT)

branch: elpa/lua-mode
commit 32b56399c82c240c59fbc9a81bf64324fcafad71
Author: immerrr <immerrr+lua@gmail.com>
Commit: immerrr <immerrr+lua@gmail.com>

    Fix wrong imenu generic expression, add one more regexp to match 'x = 
function(...)' definitions
---
 lua-mode.el | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/lua-mode.el b/lua-mode.el
index c97a7f7..4c1a7ff 100644
--- a/lua-mode.el
+++ b/lua-mode.el
@@ -580,9 +580,12 @@ Groups 6-9 can be used in any of argument regexps."
   "Default expressions to highlight in Lua mode.")
 
 (defvar lua-imenu-generic-expression
-  ;; Very rough expression, but probably it's for the best, since it's used for
-  ;; navigation. --immerrr
-  '((nil "^[ \t]*\\(?:local[ \t]+\\)?function[ \t]+[[:alnum:]_:.]" 1))
+  ;; This regexp matches expressions which look like function
+  ;; definitions, but are not necessarily allowed by Lua syntax.  This
+  ;; is done on purpose to avoid frustration when making a small error
+  ;; might cause a function get hidden from imenu index. --immerrr
+  '((nil "^[ \t]*\\(?:local[ \t]+\\)?function[ \t]+\\([[:alnum:]_:.]+\\)" 1)
+    (nil "^[ \t]*\\(?:local[ \t]+\\)?\\(\\_<[[:alnum:]_:.]+\\_>\\)[ \t]*=\[ 
\t]*\\_<function\\_>" 1))
   "Imenu generic expression for lua-mode.  See `imenu-generic-expression'.")
 
 (defvar lua-sexp-alist '(("then" . "end")



reply via email to

[Prev in Thread] Current Thread [Next in Thread]