Mam następujące zmienne env:
VIM_HOME: %ProgramFiles(x86)%\Vim\vim74
CMD: %USERPROFILE%\cmd
PATH: ...%CMD%;%VIM_HOME%;...
C: \ Users \ me \ cmd \ vim.bat
@echo off
start vim.exe %*
Skłonić:
> echo %ProgramFiles(x86)%
C:\Program Files (x86)
> echo %USERPROFILE%
C:\Users\me
> echo %CMD%
C:\Users\me\cmd
> echo %VIM_HOME%
C:\Program Files (x86)\Vim\vim74
Jak dotąd wszystko dobrze ...
> echo %PATH%
...C:\Users\me\cmd;%VIM_HOME%;...
%VIM_HOME%
nie rozwiązany, ale %CMD%
był? I konsekwentnie:
> vim
'vim.exe' is not recognized as an internal or external command, operable program or batch file.
Nie rozumiem?
%ProgramFiles(x86)%
nie ma dysku na swojej ścieżce, ale kiedy oceniasz,%VIM_HOME%
jakoś * C: \ * jest magicznie wprowadzany.c:\program files (x86)
> echo %ProgramFiles(x86)%
->Program Files (x86)
Odpowiedzi:
Nie jestem nawet pewien, jak sformułować tę „odpowiedź”, więc jeśli uważasz, że możesz sformułować ją inaczej lub dodać coś cennego, zrób to:
Po wielu próbach (zobacz
comments
sekcję pod pytaniem), aby dowiedzieć się, dlaczego zmienna VIM_HOME nie działa, zaproponowano zmianę nazwy zmiennej z VIM_HOME na _VHOME. Użytkownik końcowy potwierdził, że ta zmiana pozwoliła mu uruchomić VIM za pomocą skryptu wsadowego bez problemu. Mimo to nie było „prawdziwego” powodu, dla którego zmienna VIM_HOME nie działałaby, chyba że jest to zastrzeżona zmienna wewnętrzna dla VIM.źródło