[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
master 3447e79f24 1/3: * lisp/emacs-lisp/rx.el: Indent some rx construct
From: |
Mattias Engdegård |
Subject: |
master 3447e79f24 1/3: * lisp/emacs-lisp/rx.el: Indent some rx constructs correctly. |
Date: |
Wed, 29 Jun 2022 11:29:17 -0400 (EDT) |
branch: master
commit 3447e79f2493580864962db69859bda1afd4643b
Author: Mattias Engdegård <mattiase@acm.org>
Commit: Mattias Engdegård <mattiase@acm.org>
* lisp/emacs-lisp/rx.el: Indent some rx constructs correctly.
This includes group-n, submatch-n, =, >=, ** and repeat, whose first 1
or 2 arguments are special.
---
lisp/emacs-lisp/rx.el | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/lisp/emacs-lisp/rx.el b/lisp/emacs-lisp/rx.el
index aa2486b47e..07ede57d39 100644
--- a/lisp/emacs-lisp/rx.el
+++ b/lisp/emacs-lisp/rx.el
@@ -1110,6 +1110,14 @@ can expand to any number of values."
(append rx--builtin-forms rx--builtin-symbols)
"List of built-in rx names. These cannot be redefined by the user.")
+;; Declare Lisp indentation rules for constructs that take 1 or 2
+;; parameters before a body of RX forms.
+(dolist (sym '( group-n submatch-n = >=))
+ (put sym 'lisp-indent-function 1))
+(dolist (sym '( ** repeat))
+ (put sym 'lisp-indent-function 2))
+
+
(defun rx--translate (item)
"Translate the rx-expression ITEM. Return (REGEXP . PRECEDENCE)."
(cond