Windows gVim edite o arquivo da linha de comando

1

Eu tenho um arquivo de lote do Windows que eu uso para editar arquivos usando o Notepad ++

@echo off

if [%1] == [] (

    C:\PROG\Notepad++Portable\Notepad++Portable.exe

) else (

    C:\PROG\Notepad++Portable\Notepad++Portable.exe %CD%\%1

)

O que funciona bem e eu estou tentando fazer o mesmo para o gVim (a versão do Windows do Vim do Linux).

@echo off

if [%1] == [] (

    C:\"Program Files (x86)"\Vim\vim74\gvim.exe

) else (

    C:\"Program Files (x86)"\Vim\vim74\gvim.exe %CD%\%1

)

Mas a parte em que eu preciso editar / criar um documento como argumento não parece funcionar para o gVim.

Funciona bem no Notepad ++

C:\PROG\Notepad++Portable\Notepad++Portable.exe \directory\name\editFile.txt

Então, quando eu tento no gVim

Funciona bem no Notepad ++

C:\"Program Files (x86)"\Vim\vim74\gvim.exe \directory\name\editFile.txt

Abre sem reconhecer o argumento.

    
por Trent 23.03.2016 / 12:11

2 respostas

1

Não estou muito familiarizado com o script de arquivos em lote e como o interpretador de comandos do Windows processa o espaço em branco, mas descobri que incluir o caminho inteiro do comando entre aspas funcionou para mim quando eu criava um arquivo de lote para a extensão ItsAllText para o Firefox:

"C:\Program Files (x86)\Vim\vim74\gvim.exe" "%1"
    
por 23.03.2016 / 14:53
0

Algo que acabei de perceber é que é apenas o Vim Gráfico que não me permite editar arquivos através da linha de comando (gvim.exe)

No entanto, o Standard Vim parece funcionar perfeitamente (vim.exe). Eu atualizei meu script de lote do Windows para usá-lo e ele está funcionando bem

@echo off

if [%1] == [] (

    C:\"Program Files (x86)"\Vim\vim74\vim.exe

) else (

    C:\"Program Files (x86)"\Vim\vim74\vim.exe %CD%\%1

)
    
por 23.03.2016 / 13:08