Con Magit puede abrir el búfer de estado de magit, presione TAB
para expandir el diff (o RET
para abrir un búfer de diff separado), marque partes de un trozo y presione s
o u
para escenificar / desestabilizar la región. Muy agradable.
Me gustaría saber si es posible:
- editar un archivo
- seleccione una región, trozo o varios trozos directamente dentro del búfer de archivos
- escenificar / desestabilizar la región seleccionada o el punto de trozo
s
. Pero también puede organizar solo una parte del trozo, marcando partes del mismo (de la misma manera que lo haría en un búfer de visita de archivos) y luego escenificar solo eso.Respuestas:
No, Magit no lo admite. Sin embargo, las versiones futuras podrían. Git-Gutter lo soporta ahora. El comando se llama
git-gutter:stage-hunk
.fuente
Como se mencionó anteriormente, git-gutter es una extensión diseñada para mostrarle información de git directamente en su archivo y operar desde allí, mientras que magit se enfoca en operar en diffs.
Esta característica no está planificada para git gutter en el corto plazo ( https://github.com/syohex/emacs-git-gutter/issues/91 )
Sin embargo, es el tipo de cosas que emacs lisp debería ser muy bueno para limpiar (ir a través de los trozos en una región y organizarlos en un momento). Probar esto yo mismo fue casi el caso, el único problema fue que git-gutter inicia un proceso en segundo plano después de que colocas un trozo y no espera a que termine, así que tuve que agregar un poco de magia hacky para lidiar con esto.
La siguiente función de emacs lisp debe hacer lo que desee. Es posible que desee vincularlo a algunas teclas.
fuente