是否有一种使用粘液包装s表达式的简短方法?
假设我已经完成了一些代码并且我意识到我需要一个变量(例如出于效率原因),因此希望用let
包装它或者想要使它尾递归并且需要用{包装它} {1}},最快的方法是什么?有捷径吗?
IntelliJ(Java IDE)允许以下内容:
labels
+ TAB
得到
x > 3.if
那么在slime / emacs中是否有任何“sexp-wrapping”快捷方式(后缀或前缀)?
答案 0 :(得分:1)
条形代表光标。
有一个wrap-round
命令,绑定到 M - (。但是在向表达式添加上下文时,我通常按如下方式执行:
|code
打开括号(自动添加结束符号):
(|)code
...类型......
(let |)code
致电 paredit-forward-slurp-sexp ( C-right )
(let | code)
另请参阅The Animated Guide to Paredit。
|code
调用 mark-sexp ( C-M-Space ),然后杀死该区域;键入并粘贴(粘贴)您需要的文本。
另请参阅Emacs中提供的Expressions with Balanced Parentheses(例如forward-sexp
。