annotate nsis/gvim.nsi @ 7613:4456fa2d22e8 v7.4.1106

commit https://github.com/vim/vim/commit/286eacd3f6631e985089176fb1dff1bcf1a1d6b5 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Jan 16 18:05:50 2016 +0100 patch 7.4.1106 Problem: The nsis script can't be used from the appveyor build. Solution: Add "ifndef" to allow for variables to be set from the command line. Remove duplicate SetCompressor command. Support using other gettext binaries. (Ken Takata) Update build instructions to use libintl-8.dll.
author Christian Brabandt <cb@256bit.org>
date Sat, 16 Jan 2016 18:15:05 +0100
parents 357b7bd8d612
children c473a9393dc5
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1 # NSIS file to create a self-installing exe for Vim.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2 # It requires NSIS version 2.0 or later.
6343
edfa81ea1711 updated for version 7.4.504
Bram Moolenaar <bram@vim.org>
parents: 5294
diff changeset
3 # Last Change: 2014 Nov 5
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
4
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
5 # WARNING: if you make changes to this script, look out for $0 to be valid,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
6 # because uninstall deletes most files in $0.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
7
5128
3dafc80e781b updated for version 7.3.1307
Bram Moolenaar <bram@vim.org>
parents: 2577
diff changeset
8 # Location of gvim_ole.exe, vimw32.exe, GvimExt/*, etc.
7613
4456fa2d22e8 commit https://github.com/vim/vim/commit/286eacd3f6631e985089176fb1dff1bcf1a1d6b5
Christian Brabandt <cb@256bit.org>
parents: 7443
diff changeset
9 !ifndef VIMSRC
4456fa2d22e8 commit https://github.com/vim/vim/commit/286eacd3f6631e985089176fb1dff1bcf1a1d6b5
Christian Brabandt <cb@256bit.org>
parents: 7443
diff changeset
10 !define VIMSRC "..\src"
4456fa2d22e8 commit https://github.com/vim/vim/commit/286eacd3f6631e985089176fb1dff1bcf1a1d6b5
Christian Brabandt <cb@256bit.org>
parents: 7443
diff changeset
11 !endif
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
12
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
13 # Location of runtime files
7613
4456fa2d22e8 commit https://github.com/vim/vim/commit/286eacd3f6631e985089176fb1dff1bcf1a1d6b5
Christian Brabandt <cb@256bit.org>
parents: 7443
diff changeset
14 !ifndef VIMRT
4456fa2d22e8 commit https://github.com/vim/vim/commit/286eacd3f6631e985089176fb1dff1bcf1a1d6b5
Christian Brabandt <cb@256bit.org>
parents: 7443
diff changeset
15 !define VIMRT ".."
4456fa2d22e8 commit https://github.com/vim/vim/commit/286eacd3f6631e985089176fb1dff1bcf1a1d6b5
Christian Brabandt <cb@256bit.org>
parents: 7443
diff changeset
16 !endif
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
17
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
18 # Location of extra tools: diff.exe
7613
4456fa2d22e8 commit https://github.com/vim/vim/commit/286eacd3f6631e985089176fb1dff1bcf1a1d6b5
Christian Brabandt <cb@256bit.org>
parents: 7443
diff changeset
19 !ifndef VIMTOOLS
4456fa2d22e8 commit https://github.com/vim/vim/commit/286eacd3f6631e985089176fb1dff1bcf1a1d6b5
Christian Brabandt <cb@256bit.org>
parents: 7443
diff changeset
20 !define VIMTOOLS ..\..
4456fa2d22e8 commit https://github.com/vim/vim/commit/286eacd3f6631e985089176fb1dff1bcf1a1d6b5
Christian Brabandt <cb@256bit.org>
parents: 7443
diff changeset
21 !endif
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
22
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
23 # Comment the next line if you don't have UPX.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
24 # Get it at http://upx.sourceforge.net
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
25 !define HAVE_UPX
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
26
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
27 # comment the next line if you do not want to add Native Language Support
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
28 !define HAVE_NLS
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
29
7443
357b7bd8d612 commit https://github.com/vim/vim/commit/6c7b44472f7055c78d996e1b626bd2932502212f
Christian Brabandt <cb@256bit.org>
parents: 6343
diff changeset
30 !include gvim_version.nsh # for version number
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
31
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
32 # ----------- No configurable settings below this line -----------
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
33
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
34 !include UpgradeDLL.nsh # for VisVim.dll
2217
120502692d82 Improve the MS-Windows installer.
Bram Moolenaar <bram@vim.org>
parents: 2154
diff changeset
35 !include LogicLib.nsh
120502692d82 Improve the MS-Windows installer.
Bram Moolenaar <bram@vim.org>
parents: 2154
diff changeset
36 !include x64.nsh
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
37
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
38 Name "Vim ${VER_MAJOR}.${VER_MINOR}"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
39 OutFile gvim${VER_MAJOR}${VER_MINOR}.exe
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
40 CRCCheck force
7613
4456fa2d22e8 commit https://github.com/vim/vim/commit/286eacd3f6631e985089176fb1dff1bcf1a1d6b5
Christian Brabandt <cb@256bit.org>
parents: 7443
diff changeset
41 SetCompressor /SOLID lzma
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
42 SetDatablockOptimize on
2217
120502692d82 Improve the MS-Windows installer.
Bram Moolenaar <bram@vim.org>
parents: 2154
diff changeset
43 RequestExecutionLevel highest
7613
4456fa2d22e8 commit https://github.com/vim/vim/commit/286eacd3f6631e985089176fb1dff1bcf1a1d6b5
Christian Brabandt <cb@256bit.org>
parents: 7443
diff changeset
44 XPStyle on
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
45
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
46 ComponentText "This will install Vim ${VER_MAJOR}.${VER_MINOR} on your computer."
6343
edfa81ea1711 updated for version 7.4.504
Bram Moolenaar <bram@vim.org>
parents: 5294
diff changeset
47 DirText "Choose a directory to install Vim (should contain 'vim')"
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
48 Icon icons\vim_16c.ico
5134
b49784c49d53 updated for version 7.3.1310
Bram Moolenaar <bram@vim.org>
parents: 5128
diff changeset
49 # NSIS2 uses a different strategy with six different images in a strip...
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
50 #EnabledBitmap icons\enabled.bmp
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
51 #DisabledBitmap icons\disabled.bmp
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
52 UninstallText "This will uninstall Vim ${VER_MAJOR}.${VER_MINOR} from your system."
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
53 UninstallIcon icons\vim_uninst_16c.ico
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
54
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
55 # On NSIS 2 using the BGGradient causes trouble on Windows 98, in combination
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
56 # with the BringToFront.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
57 # BGGradient 004000 008200 FFFFFF
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
58 LicenseText "You should read the following before installing:"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
59 LicenseData ${VIMRT}\doc\uganda.nsis.txt
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
60
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
61 !ifdef HAVE_UPX
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
62 !packhdr temp.dat "upx --best --compress-icons=1 temp.dat"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
63 !endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
64
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
65 # This adds '\vim' to the user choice automagically. The actual value is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
66 # obtained below with ReadINIStr.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
67 InstallDir "$PROGRAMFILES\Vim"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
68
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
69 # Types of installs we can perform:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
70 InstType Typical
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
71 InstType Minimal
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
72 InstType Full
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
73
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
74 SilentInstall normal
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
75
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
76 # These are the pages we use
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
77 Page license
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
78 Page components
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
79 Page directory "" "" CheckInstallDir
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
80 Page instfiles
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
81 UninstPage uninstConfirm
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
82 UninstPage instfiles
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
83
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
84 ##########################################################
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
85 # Functions
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
86
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
87 Function .onInit
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
88 MessageBox MB_YESNO|MB_ICONQUESTION \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
89 "This will install Vim ${VER_MAJOR}.${VER_MINOR} on your computer.$\n Continue?" \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
90 IDYES NoAbort
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
91 Abort ; causes installer to quit.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
92 NoAbort:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
93
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
94 # run the install program to check for already installed versions
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
95 SetOutPath $TEMP
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
96 File /oname=install.exe ${VIMSRC}\installw32.exe
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
97 ExecWait "$TEMP\install.exe -uninstall-check"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
98 Delete $TEMP\install.exe
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
99
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
100 # We may have been put to the background when uninstall did something.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
101 BringToFront
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
102
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
103 # Install will have created a file for us that contains the directory where
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
104 # we should install. This is $VIM if it's set. This appears to be the only
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
105 # way to get the value of $VIM here!?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
106 ReadINIStr $INSTDIR $TEMP\vimini.ini vimini dir
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
107 Delete $TEMP\vimini.ini
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
108
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
109 # If ReadINIStr failed or did not find a path: use the default dir.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
110 StrCmp $INSTDIR "" 0 IniOK
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
111 StrCpy $INSTDIR "$PROGRAMFILES\Vim"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
112 IniOK:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
113
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
114 # Should check for the value of $VIM and use it. Unfortunately I don't know
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
115 # how to obtain the value of $VIM
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
116 # IfFileExists "$VIM" 0 No_Vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
117 # StrCpy $INSTDIR "$VIM"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
118 # No_Vim:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
119
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
120 # User variables:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
121 # $0 - holds the directory the executables are installed to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
122 # $1 - holds the parameters to be passed to install.exe. Starts with OLE
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
123 # registration (since a non-OLE gvim will not complain, and we want to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
124 # always register an OLE gvim).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
125 # $2 - holds the names to create batch files for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
126 StrCpy $0 "$INSTDIR\vim${VER_MAJOR}${VER_MINOR}"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
127 StrCpy $1 "-register-OLE"
801
67fa3b60422d updated for version 7.0b01
vimboss
parents: 799
diff changeset
128 StrCpy $2 "gvim evim gview gvimdiff vimtutor"
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
129
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
130 FunctionEnd
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
131
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
132 Function .onUserAbort
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
133 MessageBox MB_YESNO|MB_ICONQUESTION "Abort install?" IDYES NoCancelAbort
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
134 Abort ; causes installer to not quit.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
135 NoCancelAbort:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
136 FunctionEnd
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
137
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
138 # We only accept the directory if it ends in "vim". Using .onVerifyInstDir has
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
139 # the disadvantage that the browse dialog is difficult to use.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
140 Function CheckInstallDir
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
141 FunctionEnd
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
142
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
143 Function .onInstSuccess
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
144 WriteUninstaller vim${VER_MAJOR}${VER_MINOR}\uninstall-gui.exe
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
145 MessageBox MB_YESNO|MB_ICONQUESTION \
1618
46bbe11644e0 updated for version 7.2a
vimboss
parents: 1231
diff changeset
146 "The installation process has been successful. Happy Vimming! \
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
147 $\n$\n Do you want to see the README file now?" IDNO NoReadme
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
148 Exec '$0\gvim.exe -R "$0\README.txt"'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
149 NoReadme:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
150 FunctionEnd
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
151
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
152 Function .onInstFailed
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
153 MessageBox MB_OK|MB_ICONEXCLAMATION "Installation failed. Better luck next time."
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
154 FunctionEnd
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
155
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
156 Function un.onUnInstSuccess
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
157 MessageBox MB_OK|MB_ICONINFORMATION \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
158 "Vim ${VER_MAJOR}.${VER_MINOR} has been (partly) removed from your system"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
159 FunctionEnd
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
160
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
161 Function un.GetParent
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
162 Exch $0 ; old $0 is on top of stack
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
163 Push $1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
164 Push $2
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
165 StrCpy $1 -1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
166 loop:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
167 StrCpy $2 $0 1 $1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
168 StrCmp $2 "" exit
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
169 StrCmp $2 "\" exit
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
170 IntOp $1 $1 - 1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
171 Goto loop
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
172 exit:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
173 StrCpy $0 $0 $1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
174 Pop $2
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
175 Pop $1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
176 Exch $0 ; put $0 on top of stack, restore $0 to original value
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
177 FunctionEnd
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
178
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
179 ##########################################################
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
180 Section "Vim executables and runtime files"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
181 SectionIn 1 2 3
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
182
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
183 # we need also this here if the user changes the instdir
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
184 StrCpy $0 "$INSTDIR\vim${VER_MAJOR}${VER_MINOR}"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
185
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
186 SetOutPath $0
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
187 File /oname=gvim.exe ${VIMSRC}\gvim_ole.exe
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
188 File /oname=install.exe ${VIMSRC}\installw32.exe
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
189 File /oname=uninstal.exe ${VIMSRC}\uninstalw32.exe
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
190 File ${VIMSRC}\vimrun.exe
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
191 File /oname=xxd.exe ${VIMSRC}\xxdw32.exe
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
192 File ${VIMTOOLS}\diff.exe
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
193 File ${VIMRT}\vimtutor.bat
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
194 File ${VIMRT}\README.txt
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
195 File ..\uninstal.txt
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
196 File ${VIMRT}\*.vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
197 File ${VIMRT}\rgb.txt
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
198
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
199 SetOutPath $0\colors
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
200 File ${VIMRT}\colors\*.*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
201
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
202 SetOutPath $0\compiler
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
203 File ${VIMRT}\compiler\*.*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
204
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
205 SetOutPath $0\doc
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
206 File ${VIMRT}\doc\*.txt
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
207 File ${VIMRT}\doc\tags
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
208
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
209 SetOutPath $0\ftplugin
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
210 File ${VIMRT}\ftplugin\*.*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
211
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
212 SetOutPath $0\indent
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
213 File ${VIMRT}\indent\*.*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
214
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
215 SetOutPath $0\macros
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
216 File ${VIMRT}\macros\*.*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
217
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
218 SetOutPath $0\plugin
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
219 File ${VIMRT}\plugin\*.*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
220
801
67fa3b60422d updated for version 7.0b01
vimboss
parents: 799
diff changeset
221 SetOutPath $0\autoload
67fa3b60422d updated for version 7.0b01
vimboss
parents: 799
diff changeset
222 File ${VIMRT}\autoload\*.*
67fa3b60422d updated for version 7.0b01
vimboss
parents: 799
diff changeset
223
827
fd1b3406fd1c updated for version 7.0d02
vimboss
parents: 825
diff changeset
224 SetOutPath $0\autoload\xml
fd1b3406fd1c updated for version 7.0d02
vimboss
parents: 825
diff changeset
225 File ${VIMRT}\autoload\xml\*.*
fd1b3406fd1c updated for version 7.0d02
vimboss
parents: 825
diff changeset
226
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
227 SetOutPath $0\syntax
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
228 File ${VIMRT}\syntax\*.*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
229
799
6beb2c667935 updated for version 7.0b
vimboss
parents: 7
diff changeset
230 SetOutPath $0\spell
6beb2c667935 updated for version 7.0b
vimboss
parents: 7
diff changeset
231 File ${VIMRT}\spell\*.txt
6beb2c667935 updated for version 7.0b
vimboss
parents: 7
diff changeset
232 File ${VIMRT}\spell\*.vim
6beb2c667935 updated for version 7.0b
vimboss
parents: 7
diff changeset
233 File ${VIMRT}\spell\*.spl
6beb2c667935 updated for version 7.0b
vimboss
parents: 7
diff changeset
234 File ${VIMRT}\spell\*.sug
6beb2c667935 updated for version 7.0b
vimboss
parents: 7
diff changeset
235
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
236 SetOutPath $0\tools
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
237 File ${VIMRT}\tools\*.*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
238
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
239 SetOutPath $0\tutor
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
240 File ${VIMRT}\tutor\*.*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
241 SectionEnd
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
242
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
243 ##########################################################
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
244 Section "Vim console program (vim.exe)"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
245 SectionIn 1 3
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
246
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
247 SetOutPath $0
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
248 ReadRegStr $R0 HKLM \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
249 "SOFTWARE\Microsoft\Windows NT\CurrentVersion" CurrentVersion
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
250 IfErrors 0 lbl_winnt
5128
3dafc80e781b updated for version 7.3.1307
Bram Moolenaar <bram@vim.org>
parents: 2577
diff changeset
251 # Windows 95/98/ME: not supported
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
252 Goto lbl_done
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
253 lbl_winnt:
5134
b49784c49d53 updated for version 7.3.1310
Bram Moolenaar <bram@vim.org>
parents: 5128
diff changeset
254 # Windows NT/2000/XP and later
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
255 File /oname=vim.exe ${VIMSRC}\vimw32.exe
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
256 lbl_done:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
257 StrCpy $2 "$2 vim view vimdiff"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
258 SectionEnd
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
259
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
260 ##########################################################
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
261 Section "Create .bat files for command line use"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
262 SectionIn 3
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
263
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
264 StrCpy $1 "$1 -create-batfiles $2"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
265 SectionEnd
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
266
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
267 ##########################################################
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
268 Section "Create icons on the Desktop"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
269 SectionIn 1 3
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
270
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
271 StrCpy $1 "$1 -install-icons"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
272 SectionEnd
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
273
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
274 ##########################################################
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
275 Section "Add Vim to the Start Menu"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
276 SectionIn 1 3
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
277
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
278 StrCpy $1 "$1 -add-start-menu"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
279 SectionEnd
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
280
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
281 ##########################################################
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
282 Section "Add an Edit-with-Vim context menu entry"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
283 SectionIn 1 3
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
284
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
285 # Be aware of this sequence of events:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
286 # - user uninstalls Vim, gvimext.dll can't be removed (it's in use) and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
287 # is scheduled to be removed at next reboot.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
288 # - user installs Vim in same directory, gvimext.dll still exists.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
289 # If we now skip installing gvimext.dll, it will disappear at the next
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
290 # reboot. Thus when copying gvimext.dll fails always schedule it to be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
291 # installed at the next reboot. Can't use UpgradeDLL!
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
292 # We don't ask the user to reboot, the old dll will keep on working.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
293 SetOutPath $0
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
294 ClearErrors
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
295 SetOverwrite try
2217
120502692d82 Improve the MS-Windows installer.
Bram Moolenaar <bram@vim.org>
parents: 2154
diff changeset
296 ${If} ${RunningX64}
120502692d82 Improve the MS-Windows installer.
Bram Moolenaar <bram@vim.org>
parents: 2154
diff changeset
297 File /oname=gvimext.dll ${VIMSRC}\GvimExt\gvimext64.dll
120502692d82 Improve the MS-Windows installer.
Bram Moolenaar <bram@vim.org>
parents: 2154
diff changeset
298 ${Else}
120502692d82 Improve the MS-Windows installer.
Bram Moolenaar <bram@vim.org>
parents: 2154
diff changeset
299 File /oname=gvimext.dll ${VIMSRC}\GvimExt\gvimext.dll
120502692d82 Improve the MS-Windows installer.
Bram Moolenaar <bram@vim.org>
parents: 2154
diff changeset
300 ${EndIf}
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
301 IfErrors 0 GvimExtDone
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
302
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
303 # Can't copy gvimext.dll, create it under another name and rename it on
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
304 # next reboot.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
305 GetTempFileName $3 $0
2217
120502692d82 Improve the MS-Windows installer.
Bram Moolenaar <bram@vim.org>
parents: 2154
diff changeset
306 ${If} ${RunningX64}
120502692d82 Improve the MS-Windows installer.
Bram Moolenaar <bram@vim.org>
parents: 2154
diff changeset
307 File /oname=$3 ${VIMSRC}\GvimExt\gvimext64.dll
120502692d82 Improve the MS-Windows installer.
Bram Moolenaar <bram@vim.org>
parents: 2154
diff changeset
308 ${Else}
120502692d82 Improve the MS-Windows installer.
Bram Moolenaar <bram@vim.org>
parents: 2154
diff changeset
309 File /oname=$3 ${VIMSRC}\GvimExt\gvimext.dll
120502692d82 Improve the MS-Windows installer.
Bram Moolenaar <bram@vim.org>
parents: 2154
diff changeset
310 ${EndIf}
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
311 Rename /REBOOTOK $3 $0\gvimext.dll
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
312
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
313 GvimExtDone:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
314 SetOverwrite lastused
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
315
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
316 # We don't have a separate entry for the "Open With..." menu, assume
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
317 # the user wants either both or none.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
318 StrCpy $1 "$1 -install-popup -install-openwith"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
319 SectionEnd
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
320
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
321 ##########################################################
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
322 Section "Create a _vimrc if it doesn't exist"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
323 SectionIn 1 3
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
324
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
325 StrCpy $1 "$1 -create-vimrc"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
326 SectionEnd
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
327
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
328 ##########################################################
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
329 Section "Create plugin directories in HOME or VIM"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
330 SectionIn 1 3
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
331
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
332 StrCpy $1 "$1 -create-directories home"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
333 SectionEnd
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
334
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
335 ##########################################################
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
336 Section "Create plugin directories in VIM"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
337 SectionIn 3
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
338
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
339 StrCpy $1 "$1 -create-directories vim"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
340 SectionEnd
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
341
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
342 ##########################################################
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
343 Section "VisVim Extension for MS Visual Studio"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
344 SectionIn 3
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
345
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
346 SetOutPath $0
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
347 !insertmacro UpgradeDLL "${VIMSRC}\VisVim\VisVim.dll" "$0\VisVim.dll" "$0"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
348 File ${VIMSRC}\VisVim\README_VisVim.txt
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
349 SectionEnd
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
350
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
351 ##########################################################
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
352 !ifdef HAVE_NLS
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
353 Section "Native Language Support"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
354 SectionIn 1 3
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
355
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
356 SetOutPath $0\lang
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
357 File /r ${VIMRT}\lang\*.*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
358 SetOutPath $0\keymap
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
359 File ${VIMRT}\keymap\README.txt
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
360 File ${VIMRT}\keymap\*.vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
361 SetOutPath $0
7613
4456fa2d22e8 commit https://github.com/vim/vim/commit/286eacd3f6631e985089176fb1dff1bcf1a1d6b5
Christian Brabandt <cb@256bit.org>
parents: 7443
diff changeset
362 File ${VIMRT}\libintl-8.dll
4456fa2d22e8 commit https://github.com/vim/vim/commit/286eacd3f6631e985089176fb1dff1bcf1a1d6b5
Christian Brabandt <cb@256bit.org>
parents: 7443
diff changeset
363 File ${VIMRT}\libiconv-2.dll
4456fa2d22e8 commit https://github.com/vim/vim/commit/286eacd3f6631e985089176fb1dff1bcf1a1d6b5
Christian Brabandt <cb@256bit.org>
parents: 7443
diff changeset
364 File /nonfatal ${VIMRT}\libwinpthread-1.dll
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
365 SectionEnd
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
366 !endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
367
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
368 ##########################################################
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
369 Section -call_install_exe
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
370 SetOutPath $0
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
371 ExecWait "$0\install.exe $1"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
372 SectionEnd
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
373
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
374 ##########################################################
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
375 Section -post
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
376 BringToFront
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
377 SectionEnd
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
378
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
379 ##########################################################
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
380 Section Uninstall
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
381 # Apparently $INSTDIR is set to the directory where the uninstaller is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
382 # created. Thus the "vim61" directory is included in it.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
383 StrCpy $0 "$INSTDIR"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
384
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
385 # If VisVim was installed, unregister the DLL.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
386 IfFileExists "$0\VisVim.dll" Has_VisVim No_VisVim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
387 Has_VisVim:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
388 ExecWait "regsvr32.exe /u /s $0\VisVim.dll"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
389
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
390 No_VisVim:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
391
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
392 # delete the context menu entry and batch files
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
393 ExecWait "$0\uninstal.exe -nsis"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
394
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
395 # We may have been put to the background when uninstall did something.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
396 BringToFront
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
397
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
398 # ask the user if the Vim version dir must be removed
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
399 MessageBox MB_YESNO|MB_ICONQUESTION \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
400 "Would you like to delete $0?$\n \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
401 $\nIt contains the Vim executables and runtime files." IDNO NoRemoveExes
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
402
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
403 Delete /REBOOTOK $0\*.dll
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
404 ClearErrors
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
405 # Remove everything but *.dll files. Avoids that
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
406 # a lot remains when gvimext.dll cannot be deleted.
879
232a4740aa0e updated for version 7.0-005
vimboss
parents: 874
diff changeset
407 RMDir /r $0\autoload
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
408 RMDir /r $0\colors
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
409 RMDir /r $0\compiler
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
410 RMDir /r $0\doc
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
411 RMDir /r $0\ftplugin
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
412 RMDir /r $0\indent
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
413 RMDir /r $0\macros
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
414 RMDir /r $0\plugin
879
232a4740aa0e updated for version 7.0-005
vimboss
parents: 874
diff changeset
415 RMDir /r $0\spell
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
416 RMDir /r $0\syntax
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
417 RMDir /r $0\tools
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
418 RMDir /r $0\tutor
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
419 RMDir /r $0\VisVim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
420 RMDir /r $0\lang
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
421 RMDir /r $0\keymap
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
422 Delete $0\*.exe
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
423 Delete $0\*.bat
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
424 Delete $0\*.vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
425 Delete $0\*.txt
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
426
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
427 IfErrors ErrorMess NoErrorMess
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
428 ErrorMess:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
429 MessageBox MB_OK|MB_ICONEXCLAMATION \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
430 "Some files in $0 have not been deleted!$\nYou must do it manually."
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
431 NoErrorMess:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
432
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
433 # No error message if the "vim62" directory can't be removed, the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
434 # gvimext.dll may still be there.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
435 RMDir $0
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
436
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
437 NoRemoveExes:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
438 # get the parent dir of the installation
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
439 Push $INSTDIR
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
440 Call un.GetParent
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
441 Pop $0
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
442 StrCpy $1 $0
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
443
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
444 # if a plugin dir was created at installation ask the user to remove it
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
445 # first look in the root of the installation then in HOME
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
446 IfFileExists $1\vimfiles AskRemove 0
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
447 ReadEnvStr $1 "HOME"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
448 StrCmp $1 "" NoRemove 0
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
449
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
450 IfFileExists $1\vimfiles 0 NoRemove
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
451
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
452 AskRemove:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
453 MessageBox MB_YESNO|MB_ICONQUESTION \
2468
7f578da7edb2 Update version.h for 7.3c -> 7.3d.
Bram Moolenaar <bram@vim.org>
parents: 2465
diff changeset
454 "Remove all files in your $1\vimfiles directory?$\n \
2449
943280505f72 Fix that uninstaller isn't found on 64-bit Windows.
Bram Moolenaar <bram@vim.org>
parents: 2439
diff changeset
455 $\nCAREFUL: If you have created something there that you want to keep, click No" IDNO Fin
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
456 RMDir /r $1\vimfiles
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
457 NoRemove:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
458
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
459 # ask the user if the Vim root dir must be removed
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
460 MessageBox MB_YESNO|MB_ICONQUESTION \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
461 "Would you like to remove $0?$\n \
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
462 $\nIt contains your Vim configuration files!" IDNO NoDelete
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
463 RMDir /r $0 ; skipped if no
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
464 NoDelete:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
465
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
466 Fin:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
467 Call un.onUnInstSuccess
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
468
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
469 SectionEnd