Você pode definir um comando personalizado para fazer o que deseja e vinculá-lo l
a substituir o comportamento padrão:
(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)
Com isso, pressionar lin magit-mode
seleciona automaticamente a --all
opção no menu que aparece.
Informação adicional
Caso você esteja curioso, eis como cheguei à solução acima: Existem duas etapas envolvidas no que você está fazendo no momento para definir opções git log
. Primeiro, você abre o menu para escolher opções pressionando l. Para dizer magit
para passar a --all
opção git log
, você precisa pressionar -al
. Se você deseja definir um comando personalizado para automatizar esse processo, precisa saber quais comandos estão vinculados a essas teclas pressionadas. Esta informação pode ser obtida pressionando C-h c( describe-key-briefly
) ou C-h k( describe-key
) seguido da sequência de teclas que você deseja examinar.
C-h c lem um magit-mode
buffer fornece:
l
executa o comando magit-key-mode-popup-logging
C-h c -al depois de pressionar l um magit-mode
buffer, obtém:
- a l
executa o comando (lambda nil (interactive) (magit-key-mode-toggle-option (quote logging) "--all"))
Equipado com essas informações, basta criar um comando que chame as funções relevantes na ordem correta.