¿Puedo seleccionar inicialmente la opción git-log "--todos"?

7

Cuando presiono la tecla "l" en el modo de estado Magit principal, aparece una ventana donde puedo ajustar las opciones que se pasarán al magit logcomando. ¿Puedo organizar la --allopción para que siempre se seleccione inicialmente, tal como es la --graphopción?

Sean
fuente
Llegará el día en que no quieras eso, pero para entonces será demasiado tarde.
Sean Allred
Vermagit-key-mode.el:715
Sean Allred
¿Demasiado tarde para qué?
Sean
Oh, mis disculpas :) Confundí la --allopción de mostrar, bueno, todas las entradas de registro. ¡Mi error! :)
Sean Allred

Respuestas:

8

Puede definir un comando personalizado para hacer lo que desee y vincularlo lpara anular el comportamiento predeterminado:

(defun magit-log-all ()
  (interactive)
  (magit-key-mode-popup-logging)
  (magit-key-mode-toggle-option (quote logging) "--all"))

(define-key magit-mode-map (kbd "l") 'magit-log-all)

Con esto en su lugar, presionando len magit-modeforma automática selecciona la --allopción en el menú que aparece.


Información Adicional

En caso de que tenga curiosidad, así es como llegué a la solución anterior: hay dos pasos involucrados en lo que está haciendo actualmente para configurar las opciones git log. Primero, abre el menú para elegir opciones presionando l. Para indicarle magitque pase la --allopción git log, debe presionar -al. Si desea definir un comando personalizado para automatizar este proceso, necesita saber qué comandos están vinculados a estas pulsaciones de teclas. Esta información se puede obtener presionando C-h c( describe-key-briefly) o C-h k( describe-key) seguido de la secuencia de teclas que desea examinar.

  1. C-h c len un magit-modebuffer da:

    l ejecuta el comando magit-key-mode-popup-logging

  2. C-h c -al después de presionar l en un magit-modebúfer da:

    - a l ejecuta el comando (lambda nil (interactive) (magit-key-mode-toggle-option (quote logging) "--all"))

Equipado con esta información, todo lo que queda por hacer es crear un comando que llame a las funciones relevantes en el orden correcto.

itsjeyd
fuente
Había estado esperando una configuración, pero esto funcionará bien. Otras opciones incluyen asesoría magit-key-mode-popup-loggingy enlace la una macro de teclado.
Sean
@Sean, abriría un problema en GitHub: se señala en el código como algo que debe mejorarse; quizás estaban esperando a alguien con la necesidad.
Sean Allred
2
No hay necesidad de eso, en la próxima rama, el soporte para establecer argumentos predeterminados ya está implementado.
tarsius
2

Comenzando con v2.1.0la ventana emergente de registro de Magit ya no presenta el --allargumento infijo. En cambio, la ventana emergente proporciona tres nuevos comandos de sufijo relacionados .

  • l LRegistrar sucursales locales ( --branches)
  • l bRegistrar todas las ramas ( --branches --remotes)
  • l aRegistrar todas las referencias ( --all)

Si bien ya no es posible (o necesario) establecer el --allargumento, es posible que desee cambiar el valor predeterminado de algún otro argumento. Consulte ¿Cómo puedo hacer que la bandera `--verbose` esté habilitada por defecto en la pantalla de confirmación de magit? para obtener información sobre eso.

tarsius
fuente