启用启用了Paredit的emacs。如何搜索LISP(Clojure)S表达式并重命名变量?我想在当前的S表达式中而不是全局表达式。
答案 0 :(得分:9)
只需在您希望用作范围的s表达式的开头使用C-M-<space>
,突出显示它,然后照常执行query-replace
- 它将自己限制为活动状态区域。
答案 1 :(得分:2)
具有活动区域的query-replace
非常适合一般情况
在地区搜索/替换。但是对于重构代码,我更喜欢iedit。
要在defun中重命名变量,请转到要重新定义的符号,然后按 C-0 C - ; 并编辑。
要在任意区域内重命名变量,请转到符号,按 C - ; ,选择感兴趣的区域,然后再次按 C - ; 。
iedit还有许多其他功能可以帮助代码重构。提示: C - '