]> git.eshelyaron.com Git - emacs.git/commitdiff
Small tweaks for autoconf mode
authorGlenn Morris <rgm@gnu.org>
Wed, 1 Aug 2012 07:34:28 +0000 (00:34 -0700)
committerGlenn Morris <rgm@gnu.org>
Wed, 1 Aug 2012 07:34:28 +0000 (00:34 -0700)
* lisp/progmodes/autoconf.el (autoconf-definition-regexp):
Add AH_TEMPLATE, adjust submatch numbering.
(autoconf-font-lock-keywords, autoconf-imenu-generic-expression)
(autoconf-current-defun-function): Update for above change.
(autoconf-current-defun-function): First skip to end of current word.

lisp/ChangeLog
lisp/progmodes/autoconf.el

index f854e4b1c072546a1d25bbb37578f142e42ad456..bc0496e0ca6e2e555c3f87a7205b03bd3fc48ff5 100644 (file)
@@ -1,3 +1,11 @@
+2012-08-01  Glenn Morris  <rgm@gnu.org>
+
+       * progmodes/autoconf.el (autoconf-definition-regexp):
+       Add AH_TEMPLATE, adjust submatch numbering.
+       (autoconf-font-lock-keywords, autoconf-imenu-generic-expression)
+       (autoconf-current-defun-function): Update for above change.
+       (autoconf-current-defun-function): First skip to end of current word.
+
 2012-08-01  Rupert Swarbrick  <rswarbrick@gmail.com>  (tiny change)
 
        * calendar/cal-html.el (cal-html-insert-agenda-days):
index 3225fef2dfa6dc8d9843f90d7a0a16a806b7de29..c9c6a0b9dc61aa6839547fb83ee0f75553ecf245 100644 (file)
   "Hook run by `autoconf-mode'.")
 
 (defconst autoconf-definition-regexp
-  "AC_\\(SUBST\\|DEFINE\\(_UNQUOTED\\)?\\)(\\[*\\(\\sw+\\)\\]*")
+  "A\\(?:H_TEMPLATE\\|C_\\(?:SUBST\\|DEFINE\\(?:_UNQUOTED\\)?\\)\\)(\\[*\\(\\sw+\\)\\]*")
 
 (defvar autoconf-font-lock-keywords
   `(("\\_<A[CHMS]_\\sw+" . font-lock-keyword-face)
     (,autoconf-definition-regexp
-     3 font-lock-function-name-face)
+     1 font-lock-function-name-face)
     ;; Are any other M4 keywords really appropriate for configure.ac,
     ;; given that we do `dnl'?
     ("changequote" . font-lock-keyword-face)))
@@ -61,7 +61,7 @@
     table))
 
 (defvar autoconf-imenu-generic-expression
-  (list (list nil autoconf-definition-regexp 3)))
+  (list (list nil autoconf-definition-regexp 1)))
 
 ;; It's not clear how best to implement this.
 (defun autoconf-current-defun-function ()
@@ -71,10 +71,11 @@ searching backwards at another AC_... command."
   (save-excursion
     (with-syntax-table (copy-syntax-table autoconf-mode-syntax-table)
       (modify-syntax-entry ?_ "w")
+      (skip-syntax-forward "w" (line-end-position))
       (if (re-search-backward autoconf-definition-regexp
                              (save-excursion (beginning-of-defun) (point))
                              t)
-         (match-string-no-properties 3)))))
+         (match-string-no-properties 1)))))
 
 ;;;###autoload
 (define-derived-mode autoconf-mode prog-mode "Autoconf"