我正在使用SLIME学习Common Lisp。有没有办法自动完成括号,这样当我键入一个打开的paren时,会自动添加一个关闭的?我更像是一个vim家伙,所以在mv~ / .vimrc我有:
inoremap(()< Left>
因此,当我键入一个打开的paren时,vim会自动添加关闭的paren并将光标放在parens之间。有没有办法用SLIME做到这一点?
答案 0 :(得分:17)
如果您正在使用CL或其他lisps,我可以建议安装&使用paredit - 它可以帮助你写很多东西。操纵s表达式
答案 1 :(得分:3)
如果你有Emacs 24,你可以使用内置electric-pair-mode
。您可以根据要求使用M-x electric-pair-mode
激活它,或者默认情况下将其启用
(electric-pair-mode +1)
在.emacs
。
答案 2 :(得分:2)
我认为这相当于.vimrc中的内容。
(global-set-key "(" (lambda () (interactive) (insert "()") (backward-char 1)))
但我们喜欢Emacs中的更多功能。一旦你尝试用paredit写lisp, 你永远不会回去。