¿Hay un comando para ordenar los paréntesis finales?

8

Al editar el código lisp, a menudo termino con paréntesis finales dispersos (suponiendo que |sea ​​un punto):

(defun example-function ()
  (let ((x (+ 1 1)))
    (when x
      (message x)|
      )
    ))

¿Hay algún comando de conveniencia para solucionar esto? ¿Ya sea en Emacs centrales, paredit / smartparens u otros paquetes?

Sé que puedo presionar )y paredit-close-roundarreglaré el siguiente paréntesis, pero quiero arreglarlos todos en un solo comando.

Wilfred Hughes
fuente

Respuestas:

7

i( lispy-tab) de lispy hace exactamente eso. A continuación se muestra una captura de pantalla de una visualización de prueba ERT (usando xv( lispy-view-test)).

lispy-tab

abo-abo
fuente
Para aclarar: el punto debe estar al comienzo de la defun para que esto funcione, ¿correcto?
Wilfred Hughes
Sí, la operación siempre se aplica al sexp actual. No quisiera volver a sangrar código no relacionado.
abo-abo