Domanda

Using emacs with Paredit enabled. How can I search through a LISP (Clojure) S-expression and rename a variable? I'd like to do it within the current S-expression instead of globally.

È stato utile?

Soluzione

Just use C-M-<space> at the start of the s-expression you'd like to use as your scope, to highlight it, and then do a query-replace as usual - it restricts itself to the active region.

Altri suggerimenti

The query-replace with active region is quite good for general search/replace in region. But for refactoring code, I much prefer iedit.

To rename a variable within a defun, go to the symbol to be reanmed, press C-0 C-; and edit away.

To rename a variable within arbitrary region, go to the symbol, press C-;, select the region of interest, and press C-; again.

iedit has many other functions to help code refactoring. Hint: C-'

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top