Como editar a linha de comando no editor de tela cheia no ZSH?

45

No bash, usando o modo vi, se eu clicar Esc , v , minha linha de comando atual é aberta no editor especificado por $EDITOR e eu posso edite-o em tela cheia antes de "salvar" o comando a ser retornado ao shell e executado.

Como posso conseguir um comportamento semelhante no zsh? Acertar v no modo de comando resulta em uma campainha que não tem efeito aparente, apesar da variável de ambiente EDITOR estar definida.

    
por Murali Suriar 29.01.2011 / 01:32

4 respostas

33

Veja edit-command-line em zshcontrib .

bindkey -M vicmd v edit-command-line
    
por 29.01.2011 / 02:03
31

Caso você prefira atalhos de teclado do Emacs:

autoload -z edit-command-line
zle -N edit-command-line
bindkey "^X^E" edit-command-line
    
por 15.03.2012 / 17:39
19

Você pode usar fc para editar o último comando no histórico. Não é o mesmo que editar o mesmo comando, mas um toque rápido na tecla Enter faz com que seu comando atual seja o último comando do histórico.

    
por 29.01.2011 / 12:49
13

Esta é a configuração completa que adicionei ao meu ~/.zshrc para obter o mesmo comportamento do bash:

export VISUAL=vim
autoload edit-command-line; zle -N edit-command-line
bindkey -M vicmd v edit-command-line
    
por 13.09.2013 / 18:00

Tags