如果在 lisp 模式下,是否可以以不插入第二个 '(单引号)的方式配置 smartparens?
是的。这是简单的方法:
(require 'smartparens-config)
Run Code Online (Sandbox Code Playgroud)
这为 smartparens 设置了一些默认设置,我发现其中的大部分内容要么有用要么无害(看看M-x find-library <RET> smartparens-config)。其中之一在各种 Lisp 模式下禁用单引号对。
这应该在几乎所有地方都会照顾到这对,这将是一个问题。它似乎错过的一个地方是eval-expression( M-:) 命令,所以我添加了这一行:
(sp-local-pair 'minibuffer-inactive-mode "'" nil :actions nil)
Run Code Online (Sandbox Code Playgroud)
这将影响所有使用 minibuffer 进行输入的命令,因此如果您出于某种原因经常在 minibuffer 中使用单引号,您可能希望找到一个更专注的解决方案。
如果你想做更多的调整,这里是相关的 smartparens 文档。