在 token 和 parens 之间禁用 paredit insert space

Disable paredit insert space between token and parens

我喜欢在 javascript 中使用 paredit。我知道,这很奇怪,但对我有帮助。真正让我烦恼的一件事是,当我键入 foo() 时,它会自动插入一个 space 到 foo ()

是否有禁用此行为的选项?

这似乎是由函数 paredit-insert-pair 完成的。如下面最后一行所示,在此处注释掉有问题的行。 在上面的行中编写自己的自定义项可能会更正 spacep 的值并为其他模式保留 space。

调整函数 paredit-space-for-delimiter-p 也是一个选项。

(defun paredit-insert-pair (n open close forward)
  (let* ((regionp
          (and (paredit-region-active-p)
               (paredit-region-safe-for-insert-p)))
         (end
          (and regionp
               (not n)
               (prog1 (region-end) (goto-char (region-beginning))))))
    (let ((spacep (paredit-space-for-delimiter-p nil open)))
      ;; (if spacep (insert " "))