blob: ab176b88f7451ebb73bdc664e3bd6ec0907849f0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
;;; +paredit.el -*- lexical-binding: t -*-
;;; Fixing unquote-splicing behaviour with Paredit
;; https://www.n16f.net/blog/fixing-unquote-splicing-behaviour-with-paredit/
(require 'paredit)
(require 'seq)
(defcustom +paredit-no-space-prefixes '(",@")
"Prefix strings to not insert a space after in `paredit'."
:group 'paredit
:type '(repeat string))
(defun +paredit-space-for-delimiter (endp delimiter)
(let ((point (point)))
(or endp
(seq-every-p
(lambda (prefix)
(and (> point (length prefix))
(let ((start (- point (length prefix)))
(end point))
(not (string= (buffer-substring start end) prefix)))))
+paredit-no-space-prefixes))))
(provide '+paredit)
;;; +paredit.el ends here
|