2012-07-10 13 views
22

Soy nuevo en Clojure y nuevo en Emacs.¿Cómo vuelvo a indentificar inteligentemente Clojure en Emacs?

¿Hay un atajo de Emacs para volver a indentar de manera inteligente todo el archivo? si no, ¿hay al menos una forma de sangrar las regiones seleccionadas hacia la izquierda o hacia la derecha?

siento que estoy de vuelta en la edad de piedra presionando repetidamente las flechas

Respuesta

31

C - xh selecciona toda la memoria intermedia. C - M - \ reinicia la región seleccionada.

+5

Y 'C-M-q' ejecuta' indent-sexp', que también me parece bastante útil, especialmente en combinación con 'beginning-of-defun' (que vive en' C-M-a'). – Hugh

+16

Con el modo de crédito, puede presionar 'M-q', que reinicia todo el defun sin que se mueva el punto. – amalloy

+2

nitpick., Es 'C-x h' para seleccionar el buffer completo – kindahero

10

Ctrl - x,h (seleccionar todo) seguido por Tab (a guión)

4

comando de formato tampón de sidra (sidra Desde 0.9.0)

1

Cuando usted captura datos de una secuencia como C-u C-c C-e (cider-eval-last-sexp), la salida de datos brutos a su búfer puede ser difícil de inspeccionar/trabajar con. Y los comandos normales de sangría de código (mencionados en las respuestas aquí) no lo manejan bien.

Para manejar los resultados de tales expresiones evaluadas, intente cider-format-edn-region.

Como ejemplo concreto, ¿alguna vez ha intentado reformatear su ~/.lein/profiles.clj? Esto es bastante difícil de hacer y mantener consistente, hasta que descubra cider-format-edn-region. Tome , tenga cuidado, sin embargo, eliminará cualquier comentario.

+0

Nunca he encontrado que formatear mi 'profiles.clj' sea difícil, como consecuencia del uso de' paredit' y 'aggressive-indent'. Este enfoque tiene la ventaja de no eliminar comentarios, que tengo mucho. –

Cuestiones relacionadas