Emacs aritmética simple en consulta reemplazar

8

¿Es posible hacer lo siguiente en emacs:

La consulta reemplaza todos los números en una región por el número + n, por ejemplo si tiene:

12 and 7 are nice numbers

deje n ser 3, entonces debería transformarse en

15 and 10 are nice numbers
estudiante
fuente

Respuestas:

9

Sí, es posible, \&se puede usar en la expresión de reemplazo para representar la coincidencia completa, de manera similar \#&se puede utilizar para representar la coincidencia completa como número.

Más concretamente:

Mx query-replace-regexp \b[0-9]+\bRETURN\,(+ 3 \#&)

Y una cita de la documentación.

Puede usar expresiones Lisp para calcular partes de la cadena de reemplazo. Para hacer esto, escriba '\,' seguido de la expresión en la cadena de reemplazo. Cada reemplazo calcula el valor de la expresión y la convierte en texto sin citar.

Oleg Pavliv
fuente