# HG changeset patch # User Bram Moolenaar # Date 1627155004 -7200 # Node ID 54425c665ba96cee7725abb21f05bfd13d5a2c07 # Parent d583eeabddee2d85d146c0996580e45cbe4a3c0b patch 8.2.3214: MS-Windows: passing /D does not set the install location Commit: https://github.com/vim/vim/commit/7d60384a00755e5c0112cebeb5e232fc133c9eca Author: Christian Brabandt Date: Sat Jul 24 21:19:42 2021 +0200 patch 8.2.3214: MS-Windows: passing /D does not set the install location Problem: MS-Windows: passing /D does not set the install location. Solution: Adjust how the installer uses $VIM. Update the documentation. (Christian Brabandt, closes #8605) diff --git a/nsis/gvim.nsi b/nsis/gvim.nsi --- a/nsis/gvim.nsi +++ b/nsis/gvim.nsi @@ -126,10 +126,11 @@ RequestExecutionLevel highest # This adds '\Vim' to the user choice automagically. The actual value is # obtained below with CheckOldVim. !ifdef WIN64 -InstallDir "$PROGRAMFILES64\Vim" + !define DEFAULT_INSTDIR "$PROGRAMFILES64\Vim" !else -InstallDir "$PROGRAMFILES\Vim" + !define DEFAULT_INSTDIR "$PROGRAMFILES\Vim" !endif +InstallDir ${DEFAULT_INSTDIR} # Types of installs we can perform: InstType $(str_type_typical) @@ -710,8 +711,13 @@ Function .onInit !insertmacro MUI_LANGDLL_DISPLAY !endif - # Check $VIM - ReadEnvStr $INSTDIR "VIM" + ${If} $INSTDIR == ${DEFAULT_INSTDIR} + # Check $VIM + ReadEnvStr $3 "VIM" + ${If} $3 != "" + StrCpy $INSTDIR $3 + ${EndIf} + ${EndIf} call CheckOldVim Pop $3 @@ -721,20 +727,11 @@ Function .onInit SectionSetInstTypes ${id_section_old_ver} 0 SectionSetText ${id_section_old_ver} "" ${Else} - ${If} $INSTDIR == "" + ${If} $INSTDIR == ${DEFAULT_INSTDIR} StrCpy $INSTDIR $3 ${EndIf} ${EndIf} - # If did not find a path: use the default dir. - ${If} $INSTDIR == "" -!ifdef WIN64 - StrCpy $INSTDIR "$PROGRAMFILES64\Vim" -!else - StrCpy $INSTDIR "$PROGRAMFILES\Vim" -!endif - ${EndIf} - ${If} ${RunningX64} SetRegView 64 ${EndIf} diff --git a/runtime/doc/os_win32.txt b/runtime/doc/os_win32.txt --- a/runtime/doc/os_win32.txt +++ b/runtime/doc/os_win32.txt @@ -18,7 +18,8 @@ 3. Restore screen contents |win32-restor 4. Using the mouse |win32-mouse| 5. Running under Windows 95 |win32-win95| 6. Running under Windows 3.1 |win32-win3.1| -7. Win32 mini FAQ |win32-faq| +7. Installation package |win32-installer| +8. Win32 mini FAQ |win32-faq| Additionally, there are a number of common Win32 and DOS items: File locations |dos-locations| @@ -175,7 +176,29 @@ There was a special version of gvim that Support was removed in patch 7.4.1364. ============================================================================== -7. Win32 mini FAQ *win32-faq* +7. Installation package *win32-installer* + +A simple installer for windows is available at http://www.vim.org/download.php +(stable version) and nightly builds are also available at +https://github.com/vim/vim-win32-installer/releases/ + +The nightly builds include 32bit and 64bit builds, have most features enabled +and usually also contain an extra cryptographic signed installer, so Windows +will not complain. + +To use the installer, simply run the exe file. The following switches are +also supported: > + + gvim_.exe /S -> silent install without any dialogues + gvim_.exe /D=C:\vim -> Install into directory c:\vim + -> /D must be the last argument + gvim_.exe /S /D=c:\vim -> silent install into c:\vim +< +The default installation directory can alternatively be given by setting the +$VIM environment variable. + +============================================================================== +8. Win32 mini FAQ *win32-faq* Q. How do I change the font? A. In the GUI version, you can use the 'guifont' option. Example: > diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -756,6 +756,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 3214, +/**/ 3213, /**/ 3212,