Por que iniciar o gvim no ConEmu funciona com uma tarefa, mas não com a linha de comando?

1

Quando eu entro isso no ConEmu:

gvim --windowid %ConEmuBackHWND% -new_console:sH

Eu recebo uma divisão em branco que depois de um tempo diz o seguinte:

GUI application (PID=384) was attached to ConEmu:
\Path\To\gvim.exe

Enquanto tentava descobrir o que estava errado, fiz uma tarefa "Gvim" com o seguinte conteúdo de comando:

gvim --windowid %ConEmuBackHWND% -new_console:sH

(igual ao comando que eu inseri acima na linha de comando)
E quando eu sei iniciar a tarefa a partir da caixa de diálogo "Criar novo console", tudo funciona bem e eu recebo uma janela de filho gvim como minha divisão correta!

Como os comandos são executados a partir da caixa de diálogo "Criar novo console" e como posso fazer o comando acima gerar uma divisão gvim diretamente do console?

    
por Fr0stBit 12.09.2015 / 02:40

1 resposta

1

ProcessExplorer é uma ferramenta muito útil para detectar problemas com variáveis de ambiente e coisas ... Eu acho que você tem problema por causa da expansão de variáveis. Tente seguir

gvim --windowid !ConEmuBackHWND! -new_console:sH

Quando você executa o comando com sinais de porcentagem, a CLI substitui as variáveis antes de ConEmu obter o comando. Então, você estava tentando executar o gvim em uma nova divisão, mas dizendo a HWND da divisão antiga .

Quando você usa sinais de exclamação, as variáveis não são expandidas, o ConEmu obtém o comando intocado e o !ConEmuBackHWND! está expandindo pelo próprio ConEmu no momento apropriado, depois que a divisão é criada e novas variáveis são inicializadas.

    
por 12.09.2015 / 03:06

Tags