commands - Equivalente de Emacs del método de plegado de Vim=sangría
vim commands (3)
Pregunta: ¿Emacs tiene un equivalente canónico de Folding with Foldmethod = sangrado de Vim?
Estoy particularmente interesado en algo que pueda funcionar junto con cualquier modo principal de Emacs y cualquier archivo. Las búsquedas de Emacs no han arrojado una respuesta definitiva.
Parece que sí, aunque no uso doblarme, así que no lo he intentado. No es de sorprender que la gente de Python tenga que ver con esta característica. Vea lo siguiente:
Probé todas las sugerencias de Joe Casadonte y Michael Paulukonis, pero ninguna funciona tan bien como la de vim. Entonces parece que la respuesta más precisa a la pregunta del OP puede ser NO en este momento.
¿tal vez exhibición selectiva? Tengo la siguiente función vinculada a [f2]
;; http://emacs.wordpress.com/2007/01/16/quick-and-dirty-code-folding/
(defun jao-toggle-selective-display (column)
(interactive "P")
(set-selective-display
(if selective-display nil (or column 1))))
Eso es bastante escueto, sin embargo, y realmente querrías que fuera sensible a la pitonimia ...
ACTUALIZACIÓN: Estaba mirando esta última noche y me di cuenta de que estaba cansado de que Cu ingresara en la columna en la que estaba (más 1) ... así que lo codifiqué:
(defun toggle-selective-display-column ()
"set selective display fold everything greater than the current column, or toggle off if active"
(interactive)
(set-selective-display
(if selective-display nil (or (+ (current-column) 1) 1))))
La elaboración adicional debe combinar las dos funciones.
Ver también: Cómo lograr efectos de plegado de código en emacs