Fazendo com que MacVim / gVim “bloqueie” o terminal até fechar

2

Há muito tempo, antes de mudar para o vims, usei um editor para o OS X conhecido como TextMate. (Alguém se lembra disso?;)

Seu binário de linha de comando, mate , permitia um sinalizador mate -w , que bloquearia a saída binária da linha de comando até que o arquivo fosse salvo e fechado. Isso permitia usar mate -w como editor para git commit-messages e similares.

Tentar fazer semelhante com o MacVim (ou gVim) não dá certo; como o ajudante mvim fecha assim que o MacVim é iniciado (ou assim que o arquivo é aberto). Isso resulta em uma “sua mensagem estava vazia”, ou outro erro similar, de qualquer programa chamado $EDITOR : até onde o programa sabe, o 'editor' (o mvim helper-binary) saiu, mas o arquivo fornecido para edição ainda está vazio.

Existe algum comando, definição de configuração ou hack que eu poderia usar para garantir que a linha de comando mvim helper (ou qualquer alias ou script alternativo que você invente para mim) não saia até que o arquivos abertos foram salvos e fechados no MacVim ?

    
por ELLIOTTCABLE 06.08.2013 / 03:14

3 respostas

7

Você provavelmente deseja a opção de linha de comando -f (que significa "fique em primeiro plano"; consulte :help -f ). Geralmente, você pode incorporá-lo diretamente ao seu valor EDITOR (ou ao de VISUAL, GIT_EDITOR ou Git’s core.editor , etc.):

EDITOR='mvim -f'; export EDITOR

Esta opção não é específica para mvim ; ele também deve funcionar com gvim (ou seja, qualquer GUI vim).

    
por 06.08.2013 / 05:42
1

Você sabia que pode executar o MacVim em seu emulador de terminal?

$ mvim -v filename
    
por 07.08.2013 / 09:59
0

Você pode forçar o mvim a bloquear o terminal adicionando: -f ou --nofork

-f or --nofork Foreground: Don't fork when starting GUI

Então, adicione isso ao seu perfil:

export EDITOR="mvim -f"
    
por 02.01.2016 / 10:25