我正在使用 SLIME 学习 Common Lisp。有没有办法自动完成括号,这样当我输入一个开放的括号时,会自动添加一个封闭的括号?我更像是一个 vim 人,所以在 mv ~/.vimrc 我有:
inoremap(()<左>
所以当我输入一个开放的括号时,vim 会自动添加封闭的括号并将我的光标放在括号之间。有没有办法用 SLIME 做到这一点?
如果您正在使用 CL 或其他 lisps,我可以推荐安装和使用paredit - 它对编写和操作 s 表达式有很大帮助
如果你有 Emacs 24,你可以使用内置的electric-pair-mode
. 您可以根据要求使用 激活它M-x electric-pair-mode
,或者默认打开它
(电对模式+1)
在你的.emacs
.
我认为这相当于您的 .vimrc 中的内容。
(global-set-key "(" (lambda () (interactive) (insert "()") (backward-char 1)))
但我们喜欢 Emacs 中的更多功能。一旦你尝试用 paredit 来写 lisp,你就再也回不去了。