如何在父级模式下删除额外的父级



我在Emacs中使用Paredit来编辑Lisp代码。我如何删除一对额外的父母,我不小心插入?如果没有额外的命令,Paredit不允许这样做。

((square 5)) into (square 5)

这是paredit-splice-sexp,键绑定是M-s。查看此处的括号小抄

仔细阅读垃圾和泔水。

你也可以安装" parendit -menu "。它提供了一个操作菜单,并提供了显示其效果的工具提示。

Paredit偶尔会让你陷入这样一种情况:最简单的方法就是关闭它,修复所有东西,然后重新打开它。然而,这是值得的。

如果在插入这些额外的父级之后发现意外的额外父级,我将调用undo命令。如果我很晚才看到额外的父级,那么有一些paredit命令可以将其固定为指定的其他答案,但如果我不知道这些命令,那么我会将point放在内部表单的某个地方,然后键入以下内容,前提是打开了CUA模式。

C-M-u C-M-SPC C-x <timeout> <left> C-M-SPC C-v

当有元素在里面时,parendit不允许我们删除父元素。我的技巧是剪切正确的代码并将其粘贴到相邻的其他地方。它将使额外的双亲为空,然后现在我可以删除它。实际上,正确的方法是使用M-s来重新缩进。相反,可以使用C-q (C-q }插入单父括号。

最新更新