aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorElías Gabriel Pérez2025-04-24 17:34:58 -0600
committerEli Zaretskii2025-06-21 12:24:55 +0300
commit60fbeda771639ded68ffd0666df340c7a06cafcf (patch)
tree9b11ccee5a6bbba5e51eb0b23b5b0dbff300d6f6 /test
parente379f14193982ef500d8806386e26155ff780290 (diff)
downloademacs-60fbeda771639ded68ffd0666df340c7a06cafcf.tar.gz
emacs-60fbeda771639ded68ffd0666df340c7a06cafcf.zip
Support strings for electric pairs (bug#78053)
This add support for insert string pairs in 'electric-pairs-mode'. * lisp/elec-pair.el (electric-pair-pairs) (electric-pair-text-pairs): Add new defcustom types. (electric-pair-syntax-info) (electric-pair-post-self-insert-function): Add support for strings. * etc/NEWS: Announce changes. * test/lisp/electric-tests.el: Add new tests.
Diffstat (limited to 'test')
-rw-r--r--test/lisp/electric-tests.el27
1 files changed, 27 insertions, 0 deletions
diff --git a/test/lisp/electric-tests.el b/test/lisp/electric-tests.el
index ad7506f68ff..4468559cf38 100644
--- a/test/lisp/electric-tests.el
+++ b/test/lisp/electric-tests.el
@@ -549,6 +549,33 @@ baz\"\""
549 (electric-pair-mode 1) 549 (electric-pair-mode 1)
550 (electric-indent-mode 1) 550 (electric-indent-mode 1)
551 (electric-layout-mode 1))) 551 (electric-layout-mode 1)))
552
553;;; String pairs
554;;; TODO: add more tests
555;;;
556
557;; NOTE: Currently string pairs do not support insert pairs in region
558;; or delete them with electric-pair-delete-pair
559
560(ert-deftest electric-pair-strings-pairs ()
561 (save-electric-modes
562 (with-temp-buffer
563 (setq-local electric-pair-pairs `((,(regexp-quote "/*") . "*/")))
564 (electric-pair-local-mode)
565 (insert "/")
566 (let ((last-command-event ?\*))
567 (ert-simulate-command '(self-insert-command 1)))
568 (should (equal "/**/" (buffer-string))))))
569
570(ert-deftest electric-pair-strings-pairs-with-space ()
571 (save-electric-modes
572 (with-temp-buffer
573 (setq-local electric-pair-pairs `((,(regexp-quote "/*") " */" t)))
574 (electric-pair-local-mode)
575 (insert "/")
576 (let ((last-command-event ?\*))
577 (ert-simulate-command '(self-insert-command 1)))
578 (should (equal "/* */" (buffer-string))))))
552 579
553 580
554;;; Backspacing 581;;; Backspacing