blob: 175bc7acd0617e22f1d5feeee998c887e1c1c603 [file] [log] [blame]
zeertzjq61e984e2023-12-09 15:18:33 +08001*os_vms.txt* For Vim version 9.0. Last change: 2023 Dec 09
Bram Moolenaar071d4272004-06-13 20:20:40 +00002
3
4 VIM REFERENCE MANUAL
5
6
7 *VMS* *vms*
8This file contains the particularities for the VMS version of Vim.
9You can reach this information file by typing :help VMS in Vim command
10prompt.
11
12 1. Getting started |vms-started|
13 2. Download files |vms-download|
14 3. Compiling |vms-compiling|
15 4. Problems |vms-problems|
16 5. Deploy |vms-deploy|
17 6. Practical usage |vms-usage|
18 7. GUI mode questions |vms-gui|
19 8. Useful notes |vms-notes|
20 9. VMS related changes |vms-changes|
2110. Authors |vms-authors|
22
23==============================================================================
24
251. Getting started *vms-started*
26
Bram Moolenaar7cba6c02013-09-05 22:13:31 +020027Vim (Vi IMproved) is a Vi-compatible text editor that runs on nearly every
Bram Moolenaar071d4272004-06-13 20:20:40 +000028operating system known to humanity. Now use Vim on OpenVMS too, in character
29or X/Motif environment. It is fully featured and absolutely compatible with
30Vim on other operating systems.
31
32==============================================================================
33
342. Download files *vms-download*
35
36You can download the Vim source code by ftp from the official Vim site:
37 ftp://ftp.vim.org/pub/vim/
38Or use one of the mirrors:
39 ftp://ftp.vim.org/pub/vim/MIRRORS
40
Bram Moolenaar071d4272004-06-13 20:20:40 +000041You can download precompiled executables from:
42 http://www.polarhome.com/vim/
43 ftp://ftp.polarhome.com/pub/vim/
44
45To use the precompiled binary version, you need one of these archives:
46
Zoltan Arpadffy1c8e2332023-12-05 16:04:23 +010047 vim-XX-exe-x86-gui.zip X86_64 GUI/Motif executables
48 vim-XX-exe-x86-term.zip X86_64 console executables
49 vim-XX-exe-ia64-gui.zip IA64 GUI/Motif executables
50 vim-XX-exe-ia64-gtk.zip IA64 GUI/GTK executables
51 vim-XX-exe-ia64-term.zip IA64 console executables
Bram Moolenaarc9b4b052006-04-30 18:54:39 +000052 vim-XX-exe-axp-gui.zip Alpha GUI/Motif executables
53 vim-XX-exe-axp-gtk.zip Alpha GUI/GTK executables
Zoltan Arpadffy1c8e2332023-12-05 16:04:23 +010054 vim-XX-exe-axp-term.zip Alpha console executables
Bram Moolenaar071d4272004-06-13 20:20:40 +000055 vim-XX-exe-vax-gui.zip VAX GUI executables
Zoltan Arpadffy1c8e2332023-12-05 16:04:23 +010056 vim-XX-exe-vax-term.zip VAX console executables
Bram Moolenaar071d4272004-06-13 20:20:40 +000057
Bram Moolenaarb475fb92006-03-02 22:40:52 +000058and of course (optional)
Bram Moolenaar071d4272004-06-13 20:20:40 +000059 vim-XX-runtime.zip runtime files
60
Bram Moolenaar5eba4c22005-07-12 22:40:29 +000061The binary archives contain: vim.exe, ctags.exe, xxd.exe files.
Bram Moolenaar071d4272004-06-13 20:20:40 +000062
Bram Moolenaarc9b4b052006-04-30 18:54:39 +000063For GTK executables you will need GTKLIB that is available for
Zoltan Arpadffy1c8e2332023-12-05 16:04:23 +010064Alpha and IA64 platforms.
Bram Moolenaarb475fb92006-03-02 22:40:52 +000065
Bram Moolenaar071d4272004-06-13 20:20:40 +000066==============================================================================
67
683. Compiling *vms-compiling*
69
70See the file [.SRC]INSTALLVMS.TXT.
71
72==============================================================================
73
744. Problems *vms-problems*
75
Zoltan Arpadffy1c8e2332023-12-05 16:04:23 +010076The code has been tested under Open VMS 6.2 - 9.2 on Alpha, VAX, IA64 and
77X86_64 platforms with the DEC C compiler. It should work without major problems.
78If your system does not have some include libraries you can tune in the
Bram Moolenaar402d2fe2005-04-15 21:00:38 +000079OS_VMS_CONF.H file.
Bram Moolenaar071d4272004-06-13 20:20:40 +000080
81If you decided to build Vim with +perl, +python, etc. options, first you need
Bram Moolenaar402d2fe2005-04-15 21:00:38 +000082to download OpenVMS distributions of Perl and Python. Build and deploy the
83libraries and change adequate lines in MAKE_VMS.MMS file. There should not be
84a problem from Vim side.
Bram Moolenaar071d4272004-06-13 20:20:40 +000085
Bram Moolenaar5eba4c22005-07-12 22:40:29 +000086Also GTK, XPM library paths should be configured in MAKE_VMS.MMS
87
Bram Moolenaar402d2fe2005-04-15 21:00:38 +000088Note: Under VAX it should work with the DEC C compiler without problems. The
89VAX C compiler is not fully ANSI C compatible in pre-processor directives
Bram Moolenaar5302d9e2011-09-14 17:55:08 +020090semantics, therefore you have to use a converter program that will do the lion
Bram Moolenaar402d2fe2005-04-15 21:00:38 +000091part of the job. For detailed instructions read file INSTALLvms.txt
Bram Moolenaar071d4272004-06-13 20:20:40 +000092
Zoltan Arpadffy1c8e2332023-12-05 16:04:23 +010093To build XXD.EXE, you should change to the subdirectory and build it separately.
Bram Moolenaar071d4272004-06-13 20:20:40 +000094
Bram Moolenaar402d2fe2005-04-15 21:00:38 +000095CTAGS is not part of the Vim source distribution anymore, however the OpenVMS
96specific source might contain CTAGS source files as described above.
Bram Moolenaar071d4272004-06-13 20:20:40 +000097You can find more information about CTAGS on VMS at
98http://www.polarhome.com/ctags/
99
Bram Moolenaar06b5d512010-05-22 15:37:44 +0200100Advanced users may try some acrobatics in FEATURE.H file as well.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000101
102It is possible to compile with +xfontset +xim options too, but then you have
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000103to set up GUI fonts etc. correctly. See :help xim from Vim command prompt.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000104
105You may want to use GUI with GTK icons, then you have to download and install
106GTK for OpenVMS or at least runtime shareable images - LIBGTK from
107polarhome.com
Bram Moolenaar2a953fc2019-01-26 17:41:47 +0100108Post 7.2 Vim uses GTK2+ while the last GTK on OpenVMS is 1.2.10, therefore
Bram Moolenaar314dd792019-02-03 15:27:20 +0100109the GTK build is no longer available.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000110
111For more advanced questions, please send your problem to Vim on VMS mailing
112list <vim-vms@polarhome.com>
113More about the vim-vms list can be found at:
114http://www.polarhome.com/mailman/listinfo/vim-vms
115
116==============================================================================
117
1185. Deploy *vms-deploy*
119
120Vim uses a special directory structure to hold the document and runtime files:
121
122 vim (or wherever)
123 |- tmp
124 |- vim57
125 |----- doc
126 |----- syntax
Bram Moolenaarb475fb92006-03-02 22:40:52 +0000127 |- vim62
Bram Moolenaar071d4272004-06-13 20:20:40 +0000128 |----- doc
129 |----- syntax
Bram Moolenaarb475fb92006-03-02 22:40:52 +0000130 |- vim64
Bram Moolenaar071d4272004-06-13 20:20:40 +0000131 |----- doc
132 |----- syntax
133 vimrc (system rc files)
134 gvimrc
135
136Use: >
137
138 define/nolog VIM device:[path.vim]
139 define/nolog VIMRUNTIME device:[path.vim.vim60]
140 define/nolog TMP device:[path.tmp]
141
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +0100142To get vim.exe to find its document, filetype, and syntax files, and to
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000143specify a directory where temporary files will be located. Copy the "runtime"
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +0100144subdirectory of the Vim distribution to vimruntime.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000145
146Logicals $VIMRUNTIME and $TMP are optional.
147
148If $VIMRUNTIME is not set, Vim will guess and try to set up automatically.
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000149Read more about it at :help runtime
Bram Moolenaar071d4272004-06-13 20:20:40 +0000150
151If $TMP is not set, you will not be able to use some functions as CTAGS,
152XXD, printing etc. that use temporary directory for normal operation.
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000153The $TMP directory should be readable and writable by the user(s).
154The easiest way to set up $TMP is to define a logical: >
Bram Moolenaar071d4272004-06-13 20:20:40 +0000155
156 define/nolog TMP SYS$SCRATCH
157or as: >
158 define/nolog TMP SYS$LOGIN
159
160==============================================================================
161
1626. Practical usage *vms-usage*
163
164Usually, you want to run just one version of Vim on your system, therefore
165it is enough to dedicate one directory for Vim.
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000166Copy the whole Vim runtime directory structure to the deployment position.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000167Add the following lines to your LOGIN.COM (in SYS$LOGIN directory).
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000168Set up the logical $VIM as: >
Bram Moolenaar071d4272004-06-13 20:20:40 +0000169
170 $ define VIM device:<path>
171
172Set up some symbols: >
173
174 $ ! vi starts Vim in chr. mode.
175 $ vi*m :== mcr VIM:VIM.EXE
176
177 $ !gvi starts Vim in GUI mode.
178 $ gv*im :== spawn/nowait mcr VIM:VIM.EXE -g
179
180Please, check the notes for customization and configuration of symbols.
181
182You may want to create .vimrc and .gvimrc files in your home directory
183(SYS$LOGIN) to overwrite default settings.
184
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000185The easiest way is just rename example files. You may leave the menu file
186(MENU.VIM) and files vimrc and gvimrc in the original $VIM directory. It will
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200187be the default setup for all users, and for users it is enough to just have
188their own additions or resetting in their home directory in files .vimrc and
189.gvimrc. It should work without problems.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000190
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000191Note: Remember, system rc files (default for all users) don't have a leading
192".". So, system rc files are: >
Bram Moolenaar071d4272004-06-13 20:20:40 +0000193
194 $VIM:vimrc
195 $VIM:gvimrc
196 $VIM:menu.vim
197
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000198and user customized rc files are: >
Bram Moolenaar071d4272004-06-13 20:20:40 +0000199
200 sys$login:.vimrc
201 sys$login:.gvimrc
202
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200203You can check that everything is at the right place with the :version command.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000204
205Example LOGIN.COM: >
206
Bram Moolenaar938ae282023-02-20 20:44:55 +0000207 $ define/nolog VIM DKA0:[UTIL.VIM81]
Bram Moolenaar071d4272004-06-13 20:20:40 +0000208 $ vi*m :== mcr VIM:VIM.EXE
209 $ gv*im:== spawn/nowait/input=NLA0 mcr VIM:VIM.EXE -g -GEOMETRY 80x40
Zoltan Arpadffy1c8e2332023-12-05 16:04:23 +0100210 $ set term/inq/ins ! inquire the terminal capabilities
Bram Moolenaar05a29072019-01-18 22:59:53 +0100211 $ set disp/create/node=192.168.10.202/trans=tcpip
Bram Moolenaar071d4272004-06-13 20:20:40 +0000212
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200213Note: This set-up should be enough, if you are working on a standalone server or
214clustered environment, but if you want to use Vim as an internode editor in
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000215DECNET environment, it will satisfy as well.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000216You just have to define the "whole" path: >
217
218 $ define VIM "<server_name>[""user password""]::device:<path>"
219 $ vi*m :== "mcr VIM:VIM.EXE"
220
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200221For example: >
Bram Moolenaar071d4272004-06-13 20:20:40 +0000222
223 $ define VIM "PLUTO::RF10:[UTIL.VIM]"
224 $ define VIM "PLUTO""ZAY mypass""::RF10:[UTIL.VIM]" ! if passwd required
225
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000226You can also use the $VIMRUNTIME logical to point to the proper version of Vim
227if you have installed more versions at the same time. If $VIMRUNTIME is not
228defined Vim will borrow its value from the $VIM logical. You can find more
229information about the $VIMRUNTIME logical by typing :help runtime as a Vim
230command.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000231
232System administrators might want to set up a system wide Vim installation,
233then add to the SYS$STARTUP:SYLOGICALS.COM >
234
235 $ define/nolog/sys VIM device:<path>
236 $ define/nolog/sys TMP SYS$SCRATCH
237
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +0100238And to the SYS$STARTUP:SYLOGIN.COM >
Bram Moolenaar071d4272004-06-13 20:20:40 +0000239
240 $ vi*m :== mcr VIM:VIM.EXE
241 $ gv*im:== spawn/nowait/input=NLA0 mcr VIM:VIM.EXE -g -GEOMETRY 80x40
242
243
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000244It will set up a normal Vim work environment for every user on the system.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000245
Bram Moolenaarb475fb92006-03-02 22:40:52 +0000246IMPORTANT: Vim on OpenVMS (and on other case insensitive system) command line
Bram Moolenaard5ab34b2007-05-05 17:15:44 +0000247parameters are assumed to be lowercase. In order to indicate that a command
Bram Moolenaarb475fb92006-03-02 22:40:52 +0000248line parameter is uppercase "/" sign must be used.
249
250Examples:
251 >
252 vim -R filename ! means: -r List swap files and exit
Bram Moolenaarc9b4b052006-04-30 18:54:39 +0000253 vim -/r filename ! means: -R Readonly mode (like "view")
254 vim -u <vimrc> ! means: -u Use <vimrc> instead of any .vimrc
255 vim -/u <gvimrc> ! means: -U Use <gvimrc> instead of any .gvimrc
256
Bram Moolenaar071d4272004-06-13 20:20:40 +0000257==============================================================================
258
2597. GUI mode questions *vms-gui*
260
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000261OpenVMS is a real mainframe OS, therefore even if it has a GUI console, most
262of the users do not use a native X/Window environment during normal operation.
263It is not possible to start Vim in GUI mode "just like that". But anyhow it
264is not too complicated either.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000265
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000266First of all: you will need an executable that is built with the GUI enabled.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000267
268Second: you need to have installed DECW/Motif on your VMS server, otherwise
269you will get errors that some shareable libraries are missing.
270
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000271Third: If you choose to run Vim with extra features such as GUI/GTK then you
272need a GTK installation too or at least a GTK runtime environment (LIBGTK
Bram Moolenaar5eba4c22005-07-12 22:40:29 +0000273can be downloaded from http://www.polarhome.com/vim/).
Bram Moolenaar071d4272004-06-13 20:20:40 +0000274
2751) If you are working on the VMS X/Motif console:
276 Start Vim with the command: >
277
278 $ mc device:<path>VIM.EXE -g
279<
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000280 or type :gui as a command to the Vim command prompt. For more info :help
281 gui
Bram Moolenaar071d4272004-06-13 20:20:40 +0000282
Bram Moolenaar402d2fe2005-04-15 21:00:38 +00002832) If you are working on some other X/Window environment like Unix or a remote
284 X VMS console. Set up display to your host with: >
Bram Moolenaar071d4272004-06-13 20:20:40 +0000285
286 $ set disp/create/node=<your IP address>/trans=<transport-name>
287<
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000288 and start Vim as in point 1. You can find more help in VMS documentation or
Bram Moolenaar071d4272004-06-13 20:20:40 +0000289 type: help set disp in VMS prompt.
290 Examples: >
291
292 $ set disp/create/node=192.168.5.159 ! default trans is DECnet
293 $ set disp/create/node=192.168.5.159/trans=tcpip ! TCP/IP network
294 $ set disp/create/node=192.168.5.159/trans=local ! display on the same node
295
296Note: you should define just one of these.
297For more information type $help set disp in VMS prompt.
298
2993) Another elegant solution is XDM if you have installed on OpenVMS box.
300 It is possible to work from XDM client as from GUI console.
301
Bram Moolenaar402d2fe2005-04-15 21:00:38 +00003024) If you are working on MS-Windows or some other non X/Window environment
303 you need to set up one X server and run Vim as in point 2.
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200304 For MS-Windows there are available free X servers as MIX, Omni X etc.,
Bram Moolenaar071d4272004-06-13 20:20:40 +0000305 as well as excellent commercial products as eXcursion or ReflectionX with
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000306 built-in DEC support.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000307
308Please note, that executables without GUI are slightly faster during startup
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200309than with enabled GUI in character mode. Therefore, if you do not use GUI
Bram Moolenaar071d4272004-06-13 20:20:40 +0000310features, it is worth to choose non GUI executables.
311
312==============================================================================
313
3148. Useful notes *vms-notes*
315
Bram Moolenaarac98e5d2008-09-01 14:51:37 +00003168.1 Backspace/delete
Bram Moolenaar071d4272004-06-13 20:20:40 +00003178.2 Filters
3188.3 VMS file version numbers
3198.4 Directory conversion
3208.5 Remote host invocation
3218.6 Terminal problems
3228.7 Hex-editing and other external tools
3238.8 Sourcing vimrc and gvimrc
3248.9 Printing from Vim
3258.10 Setting up the symbols
3268.11 diff and other GNU programs
3278.12 diff-mode
3288.13 Allow '$' in C keywords
3298.14 VIMTUTOR for beginners
Bram Moolenaar5302d9e2011-09-14 17:55:08 +02003308.15 Slow start in console mode issue
3318.16 Common VIM directory - different architectures
Bram Moolenaar071d4272004-06-13 20:20:40 +0000332
Bram Moolenaarac98e5d2008-09-01 14:51:37 +00003338.1 Backspace/delete
Bram Moolenaar071d4272004-06-13 20:20:40 +0000334
335There are backspace/delete key inconsistencies with VMS.
Bram Moolenaarf269eab2022-10-03 18:04:35 +0100336:fixdel doesn't do the trick, but the solution is (without "<" in 'cpo'): >
Bram Moolenaar071d4272004-06-13 20:20:40 +0000337
Bram Moolenaarf269eab2022-10-03 18:04:35 +0100338 :inoremap <C-?> <C-H> " for terminal mode
339 :inoremap <Del> <C-H> " for gui mode
Bram Moolenaar071d4272004-06-13 20:20:40 +0000340
341Read more in ch: 8.6 (Terminal problems).
342(Bruce Hunsaker <BNHunsaker@chq.byu.edu> Vim 5.3)
343
344
3458.2 Filters
346
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000347Vim supports filters, i.e., if you have a sort program that can handle
Bram Moolenaar071d4272004-06-13 20:20:40 +0000348input/output redirection like Unix (<infile >outfile), you could use >
349
350 :map \s 0!'aqsort<CR>
351
352(Charles E. Campbell, Jr. <cec@gryphon.gsfc.nasa.gov> Vim 5.4)
353
354
3558.3 VMS file version numbers
356
357Vim is saving files into a new file with the next higher file version
358number, try these settings. >
359
360 :set nobackup " does not create *.*_ backup files
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000361 :set nowritebackup " does not have any purpose on VMS. It's the
Bram Moolenaarc9b4b052006-04-30 18:54:39 +0000362 " default.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000363
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200364Recovery is working perfectly as well from the default swap file.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000365Read more with :help swapfile
366
367(Claude Marinier <ClaudeMarinier@xwavesolutions.com> Vim 5.5, Zoltan Arpadffy
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000368Vim 5.6)
Bram Moolenaar071d4272004-06-13 20:20:40 +0000369
370
3718.4 Directory conversion
372
373Vim will internally convert any unix-style paths and even mixed unix/VMS
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000374paths into VMS style paths. Some typical conversions resemble:
Bram Moolenaar071d4272004-06-13 20:20:40 +0000375
376 /abc/def/ghi -> abc:[def]ghi.
377 /abc/def/ghi.j -> abc:[def]ghi.j
378 /abc/def/ghi.j;2 -> abc:[def]ghi.j;2
379 /abc/def/ghi/jkl/mno -> abc:[def.ghi.jkl]mno.
380 abc:[def.ghi]jkl/mno -> abc:[def.ghi.jkl]mno.
381 ./ -> current directory
382 ../ -> relative parent directory
383 [.def.ghi] -> relative child directory
384 ./def/ghi -> relative child directory
385
386Note: You may use <,> brackets as well (device:<path>file.ext;version) as
387rf10:<user.zay.work>test.c;1
388
389(David Elins <delins@foliage.com>, Jerome Lauret
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200390<JLAURET@mail.chem.sunysb.edu> Vim 5.6)
Bram Moolenaar071d4272004-06-13 20:20:40 +0000391
392
3938.5 Remote host invocation
394
395It is possible to use Vim as an internode editor.
3961. Edit some file from remote node: >
397
398 vi "<server>""username passwd""::<device>:<path><filename>;<version>"
399
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +0100400Example: >
Bram Moolenaar071d4272004-06-13 20:20:40 +0000401 vi "pluto""zay passwd""::RF10:<USER.ZAY.WORK>TEST.C;1"
402
403Note: syntax is very important, otherwise VMS will recognize more parameters
404instead of one (resulting with: file not found)
405
Bram Moolenaar402d2fe2005-04-15 21:00:38 +00004062. Set up Vim as your internode editor. If Vim is not installed on your
407host, just set up your IP address, the full Vim path including the server name
408and run the command procedure below: >
Bram Moolenaar071d4272004-06-13 20:20:40 +0000409
410 $ if (p1 .eqs. "") .OR. (p2 .eqs. "") then goto usage
411 $ set disp/create/node=<your_IP_here>/trans=tcpip
412 $ define "VIM "<vim_server>""''p1' ''p2'""::<device>:<vim_path>"
413 $ vi*m :== "mcr VIM:VIM.EXE"
414 $ gv*im :== "spawn/nowait mcr VIM:VIM.EXE -g"
415 $ goto end
416 $ usage:
417 $ write sys$output " Please enter username and password as a parameter."
418 $ write sys$output " Example: @SETVIM.COM username passwd"
419 $ end:
420
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000421Note: Never use it in a clustered environment (you do not need it), loading
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +0100422could be very-very slow, but even faster than a local Emacs. :-)
Bram Moolenaar071d4272004-06-13 20:20:40 +0000423
424(Zoltan Arpadffy, Vim 5.6)
425
426
4278.6 Terminal problems
428
429If your terminal name is not known to Vim and it is trying to find the default
430one you will get the following message during start-up:
431---
432Terminal entry not found in termcap
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000433'unknown-terminal' not known. Available built-in terminals are:
Bram Moolenaar071d4272004-06-13 20:20:40 +0000434 builtin_gui
435 builtin_riscos
436 builtin_amiga
Bram Moolenaar071d4272004-06-13 20:20:40 +0000437 builtin_ansi
438 builtin_vt320
439 builtin_vt52
440 builtin_pcansi
441 builtin_win32
442 builtin_xterm
443 builtin_iris-ansi
444 builtin_debug
445 builtin_dumb
446defaulting to 'vt320'
447---
Zoltan Arpadffy1c8e2332023-12-05 16:04:23 +0100448
449Try to force to inquire the terminal capabilities with: >
450
451 $ set term/inquire
452
453If the inquire did not help, the solutions is to define the default terminal name: >
Bram Moolenaar071d4272004-06-13 20:20:40 +0000454
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000455 $ ! unknown terminal name. Let us use vt320 or ansi instead.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000456 $ ! Note: it's case sensitive
457 $ define term "vt320"
458
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200459Terminals from VT100 to VT320 (as V300, VT220, VT200) do not need any extra
460keyboard mappings. They should work perfectly as they are, including arrows,
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000461Ins, Del buttons etc., except Backspace in GUI mode. To solve it, add to
Bram Moolenaar071d4272004-06-13 20:20:40 +0000462.gvimrc: >
463
464 inoremap <Del> <BS>
465
466Vim will also recognize that they are fast terminals.
467
Bram Moolenaarc1cf4c92022-11-25 15:09:35 +0000468If you're using Vim on remote host or through a very slow connection, you
469might want to reset fast terminal option with: >
Bram Moolenaar071d4272004-06-13 20:20:40 +0000470
471 set nottyfast " set terminal to slow mode
472
Bram Moolenaar071d4272004-06-13 20:20:40 +0000473
4748.7 Hex-editing and other external tools
475
476A very important difference between OpenVMS and other systems is that VMS uses
477special commands to execute executables: >
478
479 RUN <path>filename
480 MCR <path>filename <parameters>
481
482OpenVMS users always have to be aware that the Vim command :! "just" drop them
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000483to DCL prompt. This feature is possible to use without any problem with all
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200484DCL commands, but if we want to execute some programs such as XXD, CTAGS, JTAGS,
485etc. we're running into trouble if we follow the Vim documentation (see: help
Bram Moolenaar071d4272004-06-13 20:20:40 +0000486xxd).
487
488Solution: Execute with the MC command and add the full path to the executable.
489Example: Instead of :%!xxd command use: >
490
491 :%!mc vim:xxd
492
493... or in general: >
494 :!mc <path>filename <parameters>
495
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000496Note: You can use XXD and CTAGS from GUI menu.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000497
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000498To customize ctags it is possible to define the logical $CTAGS with standard
Bram Moolenaar071d4272004-06-13 20:20:40 +0000499parameters as: >
500
501 define/nolog CTAGS "--totals -o sys$login:tags"
502
503For additional information, please read :help tagsearch and CTAGS
504documentation at http://ctags.sourceforge.net/ctags.html.
505
506(Zoltan Arpadffy, Vim 5.6-70)
507
508
5098.8 Sourcing vimrc and gvimrc
510
511If you want to use your .vimrc and .gvimrc from other platforms (e.g. Windows)
512you can get in trouble if you ftp that file(s): VMS has different end-of-line
513indication.
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000514The symptom is that Vim is not sourcing your .vimrc/.gvimrc, even if you say:
Bram Moolenaar071d4272004-06-13 20:20:40 +0000515>
516 :so sys$login:.vimrc
517
518One trick is to compress (e.g. zip) the files on the other platform and
519uncompress it on VMS; if you have the same symptom, try to create the files
520with copy-paste (for this you need both op. systems reachable from one
521machine, e.g. an Xterm on Windows or telnet to Windows from VMS).
522
523(Sandor Kopanyi, <sandor.kopanyi@mailbox.hu> Vim 6.0a)
524
525
5268.9 Printing from Vim
527
528To be able to print from Vim (running in GUI mode) under VMS you have to set
529up $TMP logical which should point to some temporary directory and logical
530SYS$PRINT to your default print queue.
531Example: >
532
533 $define SYS$PRINT HP5ANSI
534
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200535You can print out the whole buffer or just the marked area.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000536More info under :help hardcopy
537
538(Zoltan Arpadffy, Vim 6.0c)
539
540
5418.10 Setting up the symbols
542
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +0200543When I use gvim this way and press CTRL-Y in the parent terminal, gvim exits.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000544I now use a different symbol that seems to work OK and fixes the problem.
545I suggest this instead: >
546
547 $ GV*IM:==SPAWN/NOWAIT/INPUT=NLA0: MCR VIM:VIM.EXE -G -GEOMETRY 80X40
548
549The /INPUT=NLA0: separates the standard input of the gvim process from the
550parent terminal, to block signals from the parent window.
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +0200551Without the -GEOMETRY, the gvim window size will be minimal and the menu
Bram Moolenaar071d4272004-06-13 20:20:40 +0000552will be confused after a window-resize.
553
554(Carlo Mekenkamp, Coen Engelbarts, Vim 6.0ac)
555
556
5578.11 diff and other GNU programs
558
559From 6.0 diff functionality has been implemented, but OpenVMS does not use
560GNU/Unix like diff therefore built in diff does not work.
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000561There is a simple solution to solve this anomaly. Install a Unix like diff
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200562and Vim will work perfectly in diff mode too. You just have to redefine your
Bram Moolenaar071d4272004-06-13 20:20:40 +0000563diff program as: >
564
565 define /nolog diff <GNU_PATH>diff.exe
566
567Another, more sophisticated solution is described below (8.12 diff-mode)
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200568There are other programs such as patch, make etc that may cause the same
569problems. At www.polarhome.com is possible to download an GNU package for
570Alpha and VAX boxes that is meant to solve GNU problems on OpenVMS.
571(Zoltan Arpadffy, Vim 6.1)
Bram Moolenaar071d4272004-06-13 20:20:40 +0000572
573
5748.12 diff-mode
575
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +0100576Vim 6.0 and higher supports Vim diff-mode (See |new-diff-mode|, |diff-mode|
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000577and |08.7|). This uses the external program 'diff' and expects a Unix-like
578output format from diff. The standard VMS diff has a different output
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +0100579format. To use Vim on VMS in diff-mode, you need to:
Bram Moolenaar071d4272004-06-13 20:20:40 +0000580 1 Install a Unix-like diff program, e.g. GNU diff
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +0100581 2 Tell Vim to use the Unix-like diff for diff-mode.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000582
583You can download GNU diff from the VIM-VMS website, it is one of the GNU
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000584tools in http://www.polarhome.com/vim/files/gnu_tools.zip. I suggest to
Bram Moolenaar071d4272004-06-13 20:20:40 +0000585unpack it in a separate directory "GNU" and create a logical GNU: that
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000586points to that directory, e.g: >
Bram Moolenaar071d4272004-06-13 20:20:40 +0000587
588 DEFINE GNU <DISK>:[<DIRECTORY>.BIN.GNU]
589
590You may also want to define a symbol GDIFF, to use the GNU diff from the DCL
591prompt: >
592
593 GDIFF :== $GNU:DIFF.EXE
594
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +0100595Now you need to tell Vim to use the new diff program. Take the example
Bram Moolenaar071d4272004-06-13 20:20:40 +0000596settings from |diff-diffexpr| and change the call to the external diff
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000597program to the new diff on VMS. Add this to your .vimrc file: >
Bram Moolenaar071d4272004-06-13 20:20:40 +0000598
599 " Set up vimdiff options
600 if v:version >= 600
601 " Use GNU diff on VMS
602 set diffexpr=MyDiff()
603 function MyDiff()
604 let opt = ""
605 if &diffopt =~ "icase"
Bram Moolenaarc51cf032022-02-26 12:25:45 +0000606 let opt = opt .. "-i "
Bram Moolenaar071d4272004-06-13 20:20:40 +0000607 endif
608 if &diffopt =~ "iwhite"
Bram Moolenaarc51cf032022-02-26 12:25:45 +0000609 let opt = opt .. "-b "
Bram Moolenaar071d4272004-06-13 20:20:40 +0000610 endif
Bram Moolenaarc51cf032022-02-26 12:25:45 +0000611 silent execute "!mc GNU:diff.exe -a " .. opt .. v:fname_in .. " " .. v:fname_new ..
612 \ " > " .. v:fname_out
Bram Moolenaar071d4272004-06-13 20:20:40 +0000613 endfunction
614 endif
615
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +0100616You can now use Vim in diff-mode, e.g. to compare two files in read-only
Bram Moolenaar071d4272004-06-13 20:20:40 +0000617mode: >
618
619 $ VIM -D/R <FILE1> <FILE2>
620
621You can also define new symbols for vimdiff, e.g.: >
622
623 $ VIMDIFF :== 'VIM' -D/R
624 $ GVIMDIFF :== 'GVIM' -D/R
625
626You can now compare files in 4 ways: >
627
628 1. VMS diff: $ DIFF <FILE1> <FILE2>
629 2. GNU diff: $ GDIFF <FILE1> <FILE2>
630 3. VIM diff: $ VIMDIFF <FILE1> <FILE2>
631 4. GVIM diff: $ GVIMDIFF <FILE1> <FILE2>
632
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200633(Coen Engelbarts, Vim 6.1)
Bram Moolenaar071d4272004-06-13 20:20:40 +0000634
635
6368.13 Allow '$' in C keywords
637
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000638DEC C uses many identifiers with '$' in them. This is not allowed in ANSI C,
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +0100639and Vim recognises the '$' as the end of the identifier. You can change this
Bram Moolenaarf91787c2010-07-17 12:47:16 +0200640with the 'iskeyword' option.
Bram Moolenaar071d4272004-06-13 20:20:40 +0000641Add this command to your .vimrc file: >
642
643 autocmd FileType c,cpp,cs set iskeyword+=$
644
645You can also create the file(s) $VIM/FTPLUGIN/C.VIM (and/or CPP.VIM and
646CS.VIM) and add this command: >
647
648 set iskeyword+=$
649
650Now word-based commands, e.g. the '*'-search-command and the CTRL-]
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000651tag-lookup, work on the whole identifier. (Ctags on VMS also supports '$' in
Bram Moolenaar071d4272004-06-13 20:20:40 +0000652C keywords since ctags version 5.1.)
653
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200654(Coen Engelbarts, Vim 6.1)
Bram Moolenaar071d4272004-06-13 20:20:40 +0000655
6568.14 VIMTUTOR for beginners
657
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200658The VIMTUTOR.COM DCL script can help Vim beginners to learn/make their first
659steps with Vim on OpenVMS. Depending of binary distribution you may start it
660with: >
Bram Moolenaar071d4272004-06-13 20:20:40 +0000661
662 @vim:vimtutor
663
664(Thomas.R.Wyant III, Vim 6.1)
665
Bram Moolenaar5302d9e2011-09-14 17:55:08 +02006668.16 Slow start in console mode issue
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000667
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +0100668As GUI/GTK Vim works equally well in console mode, many administrators
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000669deploy those executables system wide.
670Unfortunately, on a remote slow connections GUI/GTK executables behave rather
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200671slow when user wants to run Vim just in the console mode - because of X
672environment detection timeout.
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000673
674Luckily, there is a simple solution for that. Administrators need to deploy
675both GUI/GTK build and just console build executables, like below: >
676
Bram Moolenaar24ea3ba2010-09-19 19:01:21 +0200677 |- vim73
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000678 |----- doc
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200679 |----- syntax
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000680 vimrc (system rc files)
681 gvimrc
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200682 gvim.exe (the renamed GUI or GTK built vim.exe)
683 vim.exe (the console only executable)
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000684
685Define system symbols like below in for ex in LOGIN.COM or SYLOGIN.COM: >
686
Bram Moolenaar24ea3ba2010-09-19 19:01:21 +0200687 $ define/nolog VIM RF10:[UTIL.VIM73] ! where you VIM directory is
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000688 $ vi*m :== mcr VIM:VIM.EXE
689 $ gvi*m :== mcr VIM:GVIM.EXE
690 $ ! or you can try to spawn with
691 $ gv*im :== spawn/nowait/input=NLA0 mcr VIM:GVIM.EXE -g -GEOMETRY 80x40
692
693
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200694Like this, users that do not have X environment and want to use Vim just in
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000695console mode can avoid performance problems.
696
697(Zoltan Arpadffy, Vim 7.2)
698
6998.15 Common VIM directory - different architectures
700
701In a cluster that contains nodes with different architectures like below:
702
703$show cluster
704View of Cluster from system ID 11655 node: TOR 18-AUG-2008 11:58:31
705+---------------------------------+
Bram Moolenaar85eee132018-05-06 17:57:30 +0200706| SYSTEMS | MEMBERS |
707+-----------------------+---------|
708| NODE | SOFTWARE | STATUS |
709+--------+--------------+---------|
710| TOR | VMS V7.3-2 | MEMBER |
711| TITAN2 | VMS V8.3 | MEMBER |
712| ODIN | VMS V7.3-2 | MEMBER |
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000713+---------------------------------+
714
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +0100715It is convenient to have a common VIM directory but execute different
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200716executables.
717There are several solutions for this problem:
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000718
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +0100719Solution 1. All executables in the same directory with different names
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000720This is easily done with the following script that can be added
721to the login.com or sylogin.com: >
722
723 $ if f$getsyi("NODE_HWTYPE") .eqs. "VAX"
724 $ then
725 $ say "VAX platform"
726 $ vi*m:== mcr vim:VIM.EXE_VAX
727 $ endif
728 $ if f$getsyi("NODE_HWTYPE") .eqs. "ALPH"
729 $ then
730 $ say "ALPHA platform"
731 $ vi*m :== mcr vim:VIM.EXE_AXP
732 $ endif
733 $ if f$getsyi("ARCH_NAME") .eqs. "IA64"
734 $ then
735 $ say "IA64 platform"
736 $ vi*m :== mcr vim:VIM.EXE_IA64
737 $ endif
738
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +0100739Solution 2. Different directories: >
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000740
741 $ if f$getsyi("NODE_HWTYPE") .eqs. "VAX"
742 $ then
743 $ say "VAX platform"
744 $ define/nolog VIM RF10:[UTIL.VAX_EXE] ! VAX executables
745 $ endif
746 $ if f$getsyi("NODE_HWTYPE") .eqs. "ALPH"
747 $ then
748 $ say "ALPHA platform"
749 $ define/nolog VIM RF10:[UTIL.AXP_EXE] ! AXP executables
750 $ endif
751 $ if f$getsyi("ARCH_NAME") .eqs. "IA64"
752 $ then
753 $ say "IA64 platform"
754 $ define/nolog VIM RF10:[UTIL.IA64_EXE] ! IA64 executables
755 $ endif
756 $! VIMRUNTIME must be defined in order to find runtime files
Bram Moolenaar24ea3ba2010-09-19 19:01:21 +0200757 $ define/nolog VIMRUNTIME RF10:[UTIL.VIM73]
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000758
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +0100759A good example for this approach is the [GNU]gnu_tools.com script from
760GNU_TOOLS.ZIP package downloadable from http://www.polarhome.com/vim/
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000761
762(Zoltan Arpadffy, Vim 7.2)
763
Bram Moolenaar071d4272004-06-13 20:20:40 +0000764==============================================================================
765
7669. VMS related changes *vms-changes*
767
Zoltan Arpadffy1c8e2332023-12-05 16:04:23 +0100768Version 9.0 (2023 Nov 27)
769- Vim is ported to the X86_64 architecture
zeertzjq61e984e2023-12-09 15:18:33 +0800770 - IMPORTANT: because of the getline function name used in structs like in ex_cmds.h
Zoltan Arpadffy1c8e2332023-12-05 16:04:23 +0100771 on X86_64 the CRTL_VER is kept under 80500000 level. The proper solution would be
772 to rename the getline function to something else in the struct (and in all places
773 it is used) - and avoiding to use POSIX functions in structs, but this change would
774 impact on all other operating systems. (added the the VMS TODO list)
775 Read more about at https://forum.vmssoftware.com/viewtopic.php?f=38&t=8914&p=20049
776- os_vms_conf.h includes have been reviewed for all architectures
777- added support for the MODIFIED_BY define
778
779Version 8.2 (2020 Feb 6)
Bram Moolenaar7e6a5152021-01-02 16:39:53 +0100780- make all changes needed for clean compile build of v8.2 on VMS on all platforms
Bram Moolenaar2346a632021-06-13 19:02:49 +0200781- fix the call mkdir bug (vicente_polo@yahoo.es)
Bram Moolenaar82be4842021-01-11 19:40:15 +0100782- test on VSI OpenVMS Alpha and Itanium platforms
783- added LUA support
784- added XPM support - Motif GUI with toolbar on all platforms
Bram Moolenaar2346a632021-06-13 19:02:49 +0200785- XPM v3.4.11 libraries for IA64, AXP and VAX are added
786- start integrating the new test scripts
Bram Moolenaar7e6a5152021-01-02 16:39:53 +0100787
Zoltan Arpadffy1c8e2332023-12-05 16:04:23 +0100788Version 8.1 (2019 Jan 9)
Bram Moolenaar05a29072019-01-18 22:59:53 +0100789- make necessary changes to build v8.1 on VMS
Zoltan Arpadffy1c8e2332023-12-05 16:04:23 +0100790- GTK1.2.10 on VAX
Bram Moolenaar05a29072019-01-18 22:59:53 +0100791
Zoltan Arpadffy1c8e2332023-12-05 16:04:23 +0100792Version 8.0 (2016 Nov 21)
Bram Moolenaar05a29072019-01-18 22:59:53 +0100793- solve the 100% cpu usage issue while waiting for a keystroke
794- correct the VMS warnings and errors around handling the INFINITY (used in json.c)
Bram Moolenaar314dd792019-02-03 15:27:20 +0100795- minor VMS port related changes
796- correct the make_vms.mms file for 8.0
797- fix [.TESTDIR]make_vms.mms for 8.0
Bram Moolenaar05a29072019-01-18 22:59:53 +0100798
Zoltan Arpadffy1c8e2332023-12-05 16:04:23 +0100799Version 7.4 (2013 Aug 10)
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +0200800- Undo: VMS can not handle more than one dot in the filenames use "dir/name" -> "dir/_un_name"
Bram Moolenaar206f0112014-03-12 16:51:55 +0100801 add _un_ at the beginning to keep the extension
802- correct swap file name wildcard handling
803- handle iconv usage correctly
804- do not optimize on vax - otherwise it hangs compiling crypto files
805- fileio.c fix the comment
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +0200806- correct RealWaitForChar
Bram Moolenaar206f0112014-03-12 16:51:55 +0100807- after 7.4-119 use different functions lib$cvtf_to_internal_time because Alpha and VAX have
808 G_FLOAT but IA64 uses IEEE float otherwise Vim crashes
Bram Moolenaar34401cc2014-08-29 15:12:19 +0200809- guard against crashes that are caused by mixed filenames
Bram Moolenaar206f0112014-03-12 16:51:55 +0100810- [TESTDIR]make_vms.mms changed to see the output files
811- Improve tests, update known issues
812- minor compiler warnings fixed
813- CTAGS 5.8 +regex included
814
Zoltan Arpadffy1c8e2332023-12-05 16:04:23 +0100815Version 7.3 (2010 Aug 15)
Bram Moolenaar8e469272010-07-28 19:38:16 +0200816- CTAGS 5.8 included
817- VMS compile warnings fixed - floating-point overflow warning corrected on VAX
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200818- filepath completion corrected - too many chars were escaped in filename
Bram Moolenaar8e469272010-07-28 19:38:16 +0200819 and shell commands
820- the following plugins are included into VMS runtime:
821 genutils 2.4, multiselect 2.2, multvals 3.1, selectbuf 4.3,
822 bufexplorer 7.1.7, taglist 4.5
823- minor changes in vimrc (just in VMS runtime)
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000824- make_vms.mms - HUGE model is the default
825- [TESTDIR]make_vms.mms include as many tests possible
826- modify test30 and test54 for VMS
827- enable FLOAT feature in VMS port
Bram Moolenaar8e469272010-07-28 19:38:16 +0200828- os_vms.txt updated
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000829
830Version 7.2 (2008 Aug 9)
831- VCF files write corrected
832- CTAGS 5.7 included
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200833- corrected make_vms.mms (on VAX gave syntax error)
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000834
835Version 7.1 (2007 Jun 15)
Bram Moolenaar5302d9e2011-09-14 17:55:08 +0200836- create TAGS file from menu
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000837
838Version 7 (2006 May 8)
Bram Moolenaarb475fb92006-03-02 22:40:52 +0000839- Improved low level char input (affects just console mode)
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000840- Fixed plugin bug
841- CTAGS 5.6 included
Bram Moolenaarb475fb92006-03-02 22:40:52 +0000842
843Version 6.4 (2005 Oct 15)
Bram Moolenaar5eba4c22005-07-12 22:40:29 +0000844- GTKLIB and Vim build on IA64
845- colors in terminal mode
846- syntax highlighting in terminal mode
847- write problem fixed (extra CR)
848- ESC and ESC sequence recognition in terminal mode
849- make file changed to support new MMS version
850- env variable expansion in path corrected
851- printing problems corrected
852- help text added for case insensitive arguments
853
Bram Moolenaar071d4272004-06-13 20:20:40 +0000854Version 6.3 (2004 May 10)
855- Improved vms_read function
856- CTAGS v5.5.4 included
857- Documentation corrected and updated
858
859Version 6.2 (2003 May 7)
860- Corrected VMS system call results
861- Low level character input is rewritten
862- Correction in tag and quickfix handling
863- First GTK build
864- Make file changes
865 - GTK feature added
866 - Define for OLD_VMS
867 - OpenVMS version 6.2 or older
868- Documentation updated with GTK features
869- CTAGS v5.5 included
870- VMS VIM tutor created
871
872Version 6.1 (2002 Mar 25)
873- TCL init_tcl() problem fixed
874- CTAGS v5.4 included
875- GNU tools binaries for OpenVMS
876- Make file changes
877 - PERL, PYTHON and TCL support improved
878 - InstallVMS.txt has a detailed description HOWTO build
879- VMS/Unix file handling rewritten
880- Minor casting and bug fixes
881
882Version 6.0 (2001 Sep 28)
883- Unix and VMS code has been merged
884 - separated "really" VMS related code
885 - included all possible Unix functionality
886 - simplified or deleted the configuration files
887 - makefile MAKE_VMS.MMS reviewed
888- menu changes (fixed printing, CTAGS and XXD usage)
889- fixed variable RMS record format handling anomaly
890- corrected syntax, ftplugin etc files load
891- changed expand_wildcards and expandpath functions to work more general
892- created OS_VMS_FILTER.COM - DECC->VAXC pre-processor directive convert
893 script.
894- Improved code's VAXC and new DECC compilers compatibility
895- changed quickfix parameters:
896 - errormessage format to suite DECC
897 - search, make and other commands to suite VMS system
898- updated and renamed MMS make files for Vim and CTAGS.
899- CTAGS has been removed from source distribution of Vim but it will remain
900 in OpenVMS binary distributions.
901- simplified build/configuration procedure
902- created INSTALLvms.txt - detailed compiling instructions under VMS.
903- updated test scripts.
904
905Version 5.8 (2001 Jun 1)
906- OS_VMS.TXT updated with new features.
907- other minor fixes.
908- documentation updated
909- this version had been tested much more than any other OpenVMS version
910 earlier
911
912Version 5.7 (2000 Jun 24)
913- New CTAGS v5.0 in distribution
914- Documentation updated
915
916Version 5.6 (2000 Jan 17)
917- VMS filename related changes:
918 - version handling (open everything, save to new version)
919 - correct file extension matching for syntax (version problem)
920 - handle <,> characters and passwords in directory definition
921 - handle internode/remote invocation and editing with passwords
922 - OpenVMS files will be treated case insensitive from now
923 - corrected response of expand("%:.") etc path related functions
924 (in one word: VMS directory handling internally)
925- version command
926 - corrected (+,-) information data
927 - added compiler and OS version
928 - added user and host information
929 - resolving $VIM and $VIMRUNTIME logicals
930- VMS port is in MAX_FEAT (maximum features) club with Unix, Win32 and OS/2.
931 - enabled farsi, rightleft etc. features
932 - undo level raised up to 1000
933- Updated OS_VMS.MMS file.
934 - maximum features ON is default
935 - Vim is compilable with +perl, +python and +tcl features.
936 - improved MMK compatibility
937- Created MAKEFILE_VMS.MMS, makefile for testing Vim during development.
938- Defined DEC terminal VT320
939 - compatibility for VT3*0, VT2*0 and VT1*0 - ANSI terminals
940 backwards, but not VT340 and newer with colour capability.
941 - VT320 is default terminal for OpenVMS
942 - these new terminals are also fast ttys (default for OpenVMS).
943 - allowed dec_mouse ttym
944- Updated files vimrc and gvimrc with VMS specific suggestions.
945- OS_VMS.TXT updated with new features.
946
947Version 5.5 (1999 Dec 3)
948- Popup menu line crash corrected.
949- Handle full file names with version numbers.
950- Directory handling (CD command etc.)
951- Corrected file name conversion VMS to Unix and v.v.
952- Correct response of expand wildcards
953- Recovery is working from this version under VMS as well.
954- Improved terminal and signal handing.
955- Improved OS_VMS.TXT
956
957Version 5.4 (1999 Sep 9)
958- Cut and paste mismatch corrected.
959- Motif directories during open and save are corrected.
960
961Version 5.3 (1998 Oct 12)
962- Minor changes in the code
963- Standard distribution with +GUI option
964
965Version 5.1 (1998 Apr 21)
966- Syntax and DEC C changes in the code
967- Fixing problems with the /doc subdirectory
968- Improve OS_VMS.MMS
969
970Version 4.5 (1996 Dec 16)
971- First VMS port by Henk Elbers <henk@xs4all.nl>
972
973==============================================================================
974
97510. Authors *vms-authors*
976
977OpenVMS documentation and executables are maintained by:
Zoltan Arpadffy1c8e2332023-12-05 16:04:23 +0100978Zoltan Arpadffy <zoltan.arpadffy@gmail.com>
Bram Moolenaarac98e5d2008-09-01 14:51:37 +0000979OpenVMS Vim page: http://www.polarhome.com/vim/
Bram Moolenaar071d4272004-06-13 20:20:40 +0000980
981This document uses parts and remarks from earlier authors and contributors
982of OS_VMS.TXT:
983 Charles E. Campbell, Jr. <cec@gryphon.gsfc.nasa.gov>
984 Bruce Hunsaker <BNHunsaker@chq.byu.edu>
985 Sandor Kopanyi <sandor.kopanyi@mailbox.hu>
986
Bram Moolenaar91f84f62018-07-29 15:07:52 +0200987 vim:tw=78:ts=8:noet:ft=help:norl: