| 
									
										
										
										
											2024-05-11 11:12:40 +02:00
										 |  |  | *os_vms.txt*    For Vim version 9.1.  Last change: 2024 May 11 | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 		  VIM REFERENCE MANUAL | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 							*VMS* *vms* | 
					
						
							|  |  |  | This file contains the particularities for the VMS version of Vim. | 
					
						
							|  |  |  | You can reach this information file by typing :help VMS in Vim command | 
					
						
							|  |  |  | prompt. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |  1. Getting started	|vms-started| | 
					
						
							|  |  |  |  2. Download files	|vms-download| | 
					
						
							|  |  |  |  3. Compiling		|vms-compiling| | 
					
						
							|  |  |  |  4. Problems		|vms-problems| | 
					
						
							|  |  |  |  5. Deploy		|vms-deploy| | 
					
						
							|  |  |  |  6. Practical usage	|vms-usage| | 
					
						
							|  |  |  |  7. GUI mode questions	|vms-gui| | 
					
						
							|  |  |  |  8. Useful notes	|vms-notes| | 
					
						
							|  |  |  |  9. VMS related changes	|vms-changes| | 
					
						
							|  |  |  | 10. Authors		|vms-authors| | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ============================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 1. Getting started					*vms-started* | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-09-05 22:13:31 +02:00
										 |  |  | Vim (Vi IMproved) is a Vi-compatible text editor that runs on nearly every | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | operating system known to humanity.  Now use Vim on OpenVMS too, in character | 
					
						
							|  |  |  | or X/Motif environment.  It is fully featured and absolutely compatible with | 
					
						
							|  |  |  | Vim on other operating systems. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ============================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 2. Download files					*vms-download* | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | You can download the Vim source code by ftp from the official Vim site: | 
					
						
							|  |  |  | 	ftp://ftp.vim.org/pub/vim/ | 
					
						
							|  |  |  | Or use one of the mirrors: | 
					
						
							|  |  |  | 	ftp://ftp.vim.org/pub/vim/MIRRORS | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | You can download precompiled executables from: | 
					
						
							|  |  |  | 	http://www.polarhome.com/vim/ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | To use the precompiled binary version, you need one of these archives: | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-12-05 16:04:23 +01:00
										 |  |  |   vim-XX-exe-x86-gui.zip	X86_64 GUI/Motif executables | 
					
						
							|  |  |  |   vim-XX-exe-x86-term.zip	X86_64 console executables | 
					
						
							|  |  |  |   vim-XX-exe-ia64-gui.zip	IA64 GUI/Motif executables | 
					
						
							|  |  |  |   vim-XX-exe-ia64-gtk.zip	IA64 GUI/GTK executables | 
					
						
							|  |  |  |   vim-XX-exe-ia64-term.zip	IA64 console executables | 
					
						
							| 
									
										
										
										
											2006-04-30 18:54:39 +00:00
										 |  |  |   vim-XX-exe-axp-gui.zip	Alpha GUI/Motif executables | 
					
						
							|  |  |  |   vim-XX-exe-axp-gtk.zip	Alpha GUI/GTK executables | 
					
						
							| 
									
										
										
										
											2023-12-05 16:04:23 +01:00
										 |  |  |   vim-XX-exe-axp-term.zip	Alpha console executables | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  |   vim-XX-exe-vax-gui.zip	VAX GUI executables | 
					
						
							| 
									
										
										
										
											2023-12-05 16:04:23 +01:00
										 |  |  |   vim-XX-exe-vax-term.zip	VAX console executables | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-03-02 22:40:52 +00:00
										 |  |  | and of course (optional) | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  |   vim-XX-runtime.zip		runtime files | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-07-12 22:40:29 +00:00
										 |  |  | The binary archives contain: vim.exe, ctags.exe, xxd.exe files. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-04-30 18:54:39 +00:00
										 |  |  | For GTK executables you will need GTKLIB that is available for | 
					
						
							| 
									
										
										
										
											2023-12-05 16:04:23 +01:00
										 |  |  | Alpha and IA64 platforms. | 
					
						
							| 
									
										
										
										
											2006-03-02 22:40:52 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | ============================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 3. Compiling						*vms-compiling* | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | See the file [.SRC]INSTALLVMS.TXT. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ============================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 4. Problems						*vms-problems* | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-12-05 16:04:23 +01:00
										 |  |  | The code has been tested under Open VMS 6.2 - 9.2 on Alpha, VAX, IA64 and | 
					
						
							|  |  |  | X86_64 platforms with the DEC C compiler. It should work without major problems. | 
					
						
							|  |  |  | If your system does not have some include libraries you can tune in the | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | OS_VMS_CONF.H file. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | If you decided to build Vim with +perl, +python, etc. options, first you need | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | to download OpenVMS distributions of Perl and Python.  Build and deploy the | 
					
						
							|  |  |  | libraries and change adequate lines in MAKE_VMS.MMS file.  There should not be | 
					
						
							|  |  |  | a problem from Vim side. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-07-12 22:40:29 +00:00
										 |  |  | Also GTK, XPM library paths should be configured in MAKE_VMS.MMS | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | Note: Under VAX it should work with the DEC C compiler without problems.  The | 
					
						
							|  |  |  | VAX C compiler is not fully ANSI C compatible in pre-processor directives | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | semantics, therefore you have to use a converter program that will do the lion | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | part of the job.  For detailed instructions read file INSTALLvms.txt | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-12-05 16:04:23 +01:00
										 |  |  | To build XXD.EXE, you should change to the subdirectory and build it separately. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | CTAGS is not part of the Vim source distribution anymore, however the OpenVMS | 
					
						
							|  |  |  | specific source might contain CTAGS source files as described above. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | You can find more information about CTAGS on VMS at | 
					
						
							|  |  |  | http://www.polarhome.com/ctags/ | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-05-22 15:37:44 +02:00
										 |  |  | Advanced users may try some acrobatics in FEATURE.H file as well. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | It is possible to compile with +xfontset +xim options too, but then you have | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | to set up GUI fonts etc. correctly.  See :help xim from Vim command prompt. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | You may want to use GUI with GTK icons, then you have to download and install | 
					
						
							|  |  |  | GTK for OpenVMS or at least runtime shareable images - LIBGTK from | 
					
						
							|  |  |  | polarhome.com | 
					
						
							| 
									
										
										
										
											2019-01-26 17:41:47 +01:00
										 |  |  | Post 7.2 Vim uses GTK2+ while the last GTK on OpenVMS is 1.2.10, therefore | 
					
						
							| 
									
										
										
										
											2019-02-03 15:27:20 +01:00
										 |  |  | the GTK build is no longer available. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | For more advanced questions, please send your problem to Vim on VMS mailing | 
					
						
							|  |  |  | list <vim-vms@polarhome.com> | 
					
						
							|  |  |  | More about the vim-vms list can be found at: | 
					
						
							|  |  |  | http://www.polarhome.com/mailman/listinfo/vim-vms | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ============================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 5. Deploy						*vms-deploy* | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Vim uses a special directory structure to hold the document and runtime files: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    vim (or wherever) | 
					
						
							|  |  |  |     |- tmp | 
					
						
							|  |  |  |     |- vim57 | 
					
						
							|  |  |  |     |----- doc | 
					
						
							|  |  |  |     |----- syntax | 
					
						
							| 
									
										
										
										
											2006-03-02 22:40:52 +00:00
										 |  |  |     |- vim62 | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  |     |----- doc | 
					
						
							|  |  |  |     |----- syntax | 
					
						
							| 
									
										
										
										
											2006-03-02 22:40:52 +00:00
										 |  |  |     |- vim64 | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  |     |----- doc | 
					
						
							|  |  |  |     |----- syntax | 
					
						
							|  |  |  |     vimrc    (system rc files) | 
					
						
							|  |  |  |     gvimrc | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Use: > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	define/nolog VIM	device:[path.vim] | 
					
						
							|  |  |  | 	define/nolog VIMRUNTIME device:[path.vim.vim60] | 
					
						
							|  |  |  | 	define/nolog TMP	device:[path.tmp] | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-06 20:52:26 +01:00
										 |  |  | To get vim.exe to find its document, filetype, and syntax files, and to | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | specify a directory where temporary files will be located.  Copy the "runtime" | 
					
						
							| 
									
										
										
										
											2010-01-06 20:52:26 +01:00
										 |  |  | subdirectory of the Vim distribution to vimruntime. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | Logicals $VIMRUNTIME and $TMP are optional. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | If $VIMRUNTIME is not set, Vim will guess and try to set up automatically. | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | Read more about it at :help runtime | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | If $TMP is not set, you will not be able to use some functions as CTAGS, | 
					
						
							|  |  |  | XXD, printing etc. that use temporary directory for normal operation. | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | The $TMP directory should be readable and writable by the user(s). | 
					
						
							|  |  |  | The easiest way to set up $TMP is to define a logical: > | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	define/nolog TMP SYS$SCRATCH | 
					
						
							|  |  |  | or as: > | 
					
						
							|  |  |  | 	define/nolog TMP SYS$LOGIN | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ============================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 6. Practical usage					*vms-usage* | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Usually, you want to run just one version of Vim on your system, therefore | 
					
						
							|  |  |  | it is enough to dedicate one directory for Vim. | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | Copy the whole Vim runtime directory structure to the deployment position. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | Add the following lines to your LOGIN.COM (in SYS$LOGIN directory). | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | Set up the logical $VIM as: > | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	$ define VIM device:<path> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Set up some symbols: > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	$ ! vi starts Vim in chr. mode. | 
					
						
							|  |  |  | 	$ vi*m  :== mcr VIM:VIM.EXE | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	$ !gvi starts Vim in GUI mode. | 
					
						
							|  |  |  | 	$ gv*im :== spawn/nowait mcr VIM:VIM.EXE -g | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Please, check the notes for customization and configuration of symbols. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | You may want to create .vimrc and .gvimrc files in your home directory | 
					
						
							|  |  |  | (SYS$LOGIN) to overwrite default settings. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | The easiest way is just rename example files.  You may leave the menu file | 
					
						
							|  |  |  | (MENU.VIM) and files vimrc and gvimrc in the original $VIM directory.  It will | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | be the default setup for all users, and for users it is enough to just have | 
					
						
							|  |  |  | their own additions or resetting in their home directory in files .vimrc and | 
					
						
							|  |  |  | .gvimrc.  It should work without problems. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | Note: Remember, system rc files (default for all users) don't have a leading | 
					
						
							|  |  |  | ".".  So, system rc files are: > | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	$VIM:vimrc | 
					
						
							|  |  |  | 	$VIM:gvimrc | 
					
						
							|  |  |  | 	$VIM:menu.vim | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | and user customized rc files are: > | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	sys$login:.vimrc | 
					
						
							|  |  |  | 	sys$login:.gvimrc | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | You can check that everything is at the right place with the :version command. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | Example LOGIN.COM: > | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-02-20 20:44:55 +00:00
										 |  |  | 	$ define/nolog VIM DKA0:[UTIL.VIM81] | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 	$ vi*m :== mcr VIM:VIM.EXE | 
					
						
							|  |  |  | 	$ gv*im:== spawn/nowait/input=NLA0 mcr VIM:VIM.EXE -g -GEOMETRY 80x40 | 
					
						
							| 
									
										
										
										
											2023-12-05 16:04:23 +01:00
										 |  |  | 	$ set term/inq/ins ! inquire the terminal capabilities | 
					
						
							| 
									
										
										
										
											2019-01-18 22:59:53 +01:00
										 |  |  | 	$ set disp/create/node=192.168.10.202/trans=tcpip | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | Note: This set-up should be enough, if you are working on a standalone server or | 
					
						
							|  |  |  | clustered environment, but if you want to use Vim as an internode editor in | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | DECNET environment, it will satisfy as well. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | You just have to define the "whole" path: > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	$ define VIM "<server_name>[""user password""]::device:<path>" | 
					
						
							|  |  |  | 	$ vi*m :== "mcr VIM:VIM.EXE" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | For example: > | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	$ define VIM "PLUTO::RF10:[UTIL.VIM]" | 
					
						
							|  |  |  | 	$ define VIM "PLUTO""ZAY mypass""::RF10:[UTIL.VIM]" ! if passwd required | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | You can also use the $VIMRUNTIME logical to point to the proper version of Vim | 
					
						
							|  |  |  | if you have installed more versions at the same time.  If $VIMRUNTIME is not | 
					
						
							|  |  |  | defined Vim will borrow its value from the $VIM logical.  You can find more | 
					
						
							|  |  |  | information about the $VIMRUNTIME logical by typing :help runtime as a Vim | 
					
						
							|  |  |  | command. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | System administrators might want to set up a system wide Vim installation, | 
					
						
							|  |  |  | then add to the SYS$STARTUP:SYLOGICALS.COM > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	$ define/nolog/sys VIM device:<path> | 
					
						
							|  |  |  | 	$ define/nolog/sys TMP SYS$SCRATCH | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-06 20:52:26 +01:00
										 |  |  | And to the SYS$STARTUP:SYLOGIN.COM > | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	$ vi*m :== mcr VIM:VIM.EXE | 
					
						
							|  |  |  | 	$ gv*im:== spawn/nowait/input=NLA0 mcr VIM:VIM.EXE -g -GEOMETRY 80x40 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | It will set up a normal Vim work environment for every user on the system. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-03-02 22:40:52 +00:00
										 |  |  | IMPORTANT: Vim on OpenVMS (and on other case insensitive system) command line | 
					
						
							| 
									
										
										
										
											2007-05-05 17:15:44 +00:00
										 |  |  | parameters are assumed to be lowercase. In order to indicate that a command | 
					
						
							| 
									
										
										
										
											2006-03-02 22:40:52 +00:00
										 |  |  | line parameter is uppercase "/" sign must be used. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Examples: | 
					
						
							|  |  |  |   > | 
					
						
							|  |  |  | 	vim -R  filename  ! means: -r List swap files and exit | 
					
						
							| 
									
										
										
										
											2006-04-30 18:54:39 +00:00
										 |  |  | 	vim -/r filename  ! means: -R Readonly mode (like "view") | 
					
						
							|  |  |  | 	vim -u	<vimrc>   ! means: -u Use <vimrc> instead of any .vimrc | 
					
						
							|  |  |  | 	vim -/u <gvimrc>  ! means: -U Use <gvimrc> instead of any .gvimrc | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | ============================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 7. GUI mode questions					*vms-gui* | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | OpenVMS is a real mainframe OS, therefore even if it has a GUI console, most | 
					
						
							|  |  |  | of the users do not use a native X/Window environment during normal operation. | 
					
						
							|  |  |  | It is not possible to start Vim in GUI mode "just like that".  But anyhow it | 
					
						
							|  |  |  | is not too complicated either. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | First of all: you will need an executable that is built with the GUI enabled. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | Second: you need to have installed DECW/Motif on your VMS server, otherwise | 
					
						
							|  |  |  | you will get errors that some shareable libraries are missing. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | Third: If you choose to run Vim with extra features such as GUI/GTK then you | 
					
						
							|  |  |  | need a GTK installation too or at least a GTK runtime environment (LIBGTK | 
					
						
							| 
									
										
										
										
											2005-07-12 22:40:29 +00:00
										 |  |  | can be downloaded from http://www.polarhome.com/vim/). | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 1) If you are working on the VMS X/Motif console: | 
					
						
							|  |  |  |    Start Vim with the command: > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	$ mc device:<path>VIM.EXE -g | 
					
						
							|  |  |  | < | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  |    or type :gui as a command to the Vim command prompt.  For more info :help | 
					
						
							|  |  |  |    gui | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | 2) If you are working on some other X/Window environment like Unix or a remote | 
					
						
							|  |  |  |    X VMS console.  Set up display to your host with: > | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	$ set disp/create/node=<your IP address>/trans=<transport-name> | 
					
						
							|  |  |  | < | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  |    and start Vim as in point 1.  You can find more help in VMS documentation or | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  |    type: help set disp in VMS prompt. | 
					
						
							|  |  |  |    Examples: > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	$ set disp/create/node=192.168.5.159		 ! default trans is DECnet | 
					
						
							|  |  |  | 	$ set disp/create/node=192.168.5.159/trans=tcpip ! TCP/IP network | 
					
						
							|  |  |  | 	$ set disp/create/node=192.168.5.159/trans=local ! display on the same node | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Note: you should define just one of these. | 
					
						
							|  |  |  | For more information type $help set disp in VMS prompt. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 3) Another elegant solution is XDM if you have installed on OpenVMS box. | 
					
						
							|  |  |  |    It is possible to work from XDM client as from GUI console. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | 4) If you are working on MS-Windows or some other non X/Window environment | 
					
						
							|  |  |  |    you need to set up one X server and run Vim as in point 2. | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  |    For MS-Windows there are available free X servers as MIX, Omni X etc., | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  |    as well as excellent commercial products as eXcursion or ReflectionX with | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  |    built-in DEC support. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | Please note, that executables without GUI are slightly faster during startup | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | than with enabled GUI in character mode. Therefore, if you do not use GUI | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | features, it is worth to choose non GUI executables. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ============================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 8. Useful notes						*vms-notes* | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-09-01 14:51:37 +00:00
										 |  |  | 8.1 Backspace/delete | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 8.2 Filters | 
					
						
							|  |  |  | 8.3 VMS file version numbers | 
					
						
							|  |  |  | 8.4 Directory conversion | 
					
						
							|  |  |  | 8.5 Remote host invocation | 
					
						
							|  |  |  | 8.6 Terminal problems | 
					
						
							|  |  |  | 8.7 Hex-editing and other external tools | 
					
						
							|  |  |  | 8.8 Sourcing vimrc and gvimrc | 
					
						
							|  |  |  | 8.9 Printing from Vim | 
					
						
							|  |  |  | 8.10 Setting up the symbols | 
					
						
							|  |  |  | 8.11 diff and other GNU programs | 
					
						
							|  |  |  | 8.12 diff-mode | 
					
						
							|  |  |  | 8.13 Allow '$' in C keywords | 
					
						
							|  |  |  | 8.14 VIMTUTOR for beginners | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | 8.15 Slow start in console mode issue | 
					
						
							|  |  |  | 8.16 Common VIM directory - different architectures | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-09-01 14:51:37 +00:00
										 |  |  | 8.1 Backspace/delete | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | There are backspace/delete key inconsistencies with VMS. | 
					
						
							| 
									
										
										
										
											2022-10-03 18:04:35 +01:00
										 |  |  | :fixdel doesn't do the trick, but the solution is (without "<" in 'cpo'): > | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-10-03 18:04:35 +01:00
										 |  |  | 	:inoremap <C-?> <C-H>	" for terminal mode | 
					
						
							|  |  |  | 	:inoremap <Del> <C-H>	" for gui mode | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | Read more in ch: 8.6 (Terminal problems). | 
					
						
							|  |  |  | (Bruce Hunsaker <BNHunsaker@chq.byu.edu> Vim 5.3) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 8.2 Filters | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | Vim supports filters, i.e., if you have a sort program that can handle | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | input/output redirection like Unix (<infile >outfile), you could use > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	:map \s 0!'aqsort<CR> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | (Charles E. Campbell, Jr. <cec@gryphon.gsfc.nasa.gov> Vim 5.4) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 8.3 VMS file version numbers | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Vim is saving files into a new file with the next higher file version | 
					
						
							|  |  |  | number, try these settings. > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	:set nobackup	     " does not create *.*_ backup files | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | 	:set nowritebackup   " does not have any purpose on VMS.  It's the | 
					
						
							| 
									
										
										
										
											2006-04-30 18:54:39 +00:00
										 |  |  | 			     " default. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | Recovery is working perfectly as well from the default swap file. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | Read more with :help swapfile | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | (Claude Marinier <ClaudeMarinier@xwavesolutions.com> Vim 5.5, Zoltan Arpadffy | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | Vim 5.6) | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 8.4 Directory conversion | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Vim will internally convert any unix-style paths and even mixed unix/VMS | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | paths into VMS style paths.  Some typical conversions resemble: | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	/abc/def/ghi		-> abc:[def]ghi. | 
					
						
							|  |  |  | 	/abc/def/ghi.j		-> abc:[def]ghi.j | 
					
						
							|  |  |  | 	/abc/def/ghi.j;2	-> abc:[def]ghi.j;2 | 
					
						
							|  |  |  | 	/abc/def/ghi/jkl/mno	-> abc:[def.ghi.jkl]mno. | 
					
						
							|  |  |  | 	abc:[def.ghi]jkl/mno	-> abc:[def.ghi.jkl]mno. | 
					
						
							|  |  |  | 	  ./			-> current directory | 
					
						
							|  |  |  | 	  ../			-> relative parent directory | 
					
						
							|  |  |  | 	  [.def.ghi]		-> relative child directory | 
					
						
							|  |  |  | 	   ./def/ghi		-> relative child directory | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Note: You may use <,> brackets as well (device:<path>file.ext;version) as | 
					
						
							|  |  |  | rf10:<user.zay.work>test.c;1 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | (David Elins <delins@foliage.com>, Jerome Lauret | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | <JLAURET@mail.chem.sunysb.edu> Vim 5.6) | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 8.5 Remote host invocation | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | It is possible to use Vim as an internode editor. | 
					
						
							|  |  |  | 1. Edit some file from remote node: > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	vi "<server>""username passwd""::<device>:<path><filename>;<version>" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-06 20:52:26 +01:00
										 |  |  | Example: > | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 	vi "pluto""zay passwd""::RF10:<USER.ZAY.WORK>TEST.C;1" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Note: syntax is very important, otherwise VMS will recognize more parameters | 
					
						
							|  |  |  | instead of one (resulting with: file not found) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | 2.  Set up Vim as your internode editor.  If Vim is not installed on your | 
					
						
							|  |  |  | host, just set up your IP address, the full Vim path including the server name | 
					
						
							|  |  |  | and run the command procedure below: > | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	$ if (p1 .eqs. "") .OR. (p2 .eqs. "") then goto usage | 
					
						
							|  |  |  | 	$ set disp/create/node=<your_IP_here>/trans=tcpip | 
					
						
							|  |  |  | 	$ define "VIM "<vim_server>""''p1' ''p2'""::<device>:<vim_path>" | 
					
						
							|  |  |  | 	$  vi*m :== "mcr VIM:VIM.EXE" | 
					
						
							|  |  |  | 	$ gv*im :== "spawn/nowait mcr VIM:VIM.EXE -g" | 
					
						
							|  |  |  | 	$ goto end | 
					
						
							|  |  |  | 	$ usage: | 
					
						
							|  |  |  | 	$ write sys$output " Please enter username and password as a parameter." | 
					
						
							|  |  |  | 	$ write sys$output " Example: @SETVIM.COM username passwd" | 
					
						
							|  |  |  | 	$ end: | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | Note: Never use it in a clustered environment (you do not need it), loading | 
					
						
							| 
									
										
										
										
											2010-01-06 20:52:26 +01:00
										 |  |  | could be very-very slow, but even faster than a local Emacs. :-) | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | (Zoltan Arpadffy, Vim 5.6) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 8.6 Terminal problems | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | If your terminal name is not known to Vim and it is trying to find the default | 
					
						
							|  |  |  | one you will get the following message during start-up: | 
					
						
							|  |  |  | --- | 
					
						
							|  |  |  | Terminal entry not found in termcap | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | 'unknown-terminal' not known.  Available built-in terminals are: | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  |     builtin_gui | 
					
						
							|  |  |  |     builtin_riscos | 
					
						
							|  |  |  |     builtin_amiga | 
					
						
							|  |  |  |     builtin_ansi | 
					
						
							|  |  |  |     builtin_vt320 | 
					
						
							|  |  |  |     builtin_vt52 | 
					
						
							|  |  |  |     builtin_pcansi | 
					
						
							|  |  |  |     builtin_win32 | 
					
						
							|  |  |  |     builtin_xterm | 
					
						
							|  |  |  |     builtin_iris-ansi | 
					
						
							|  |  |  |     builtin_debug | 
					
						
							|  |  |  |     builtin_dumb | 
					
						
							|  |  |  | defaulting to 'vt320' | 
					
						
							|  |  |  | --- | 
					
						
							| 
									
										
										
										
											2023-12-05 16:04:23 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | Try to force to inquire the terminal capabilities with: > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	$ set term/inquire | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | If the inquire did not help, the solutions is to define the default terminal name: > | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | 	$ ! unknown terminal name.  Let us use vt320 or ansi instead. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 	$ ! Note: it's case sensitive | 
					
						
							|  |  |  | 	$ define term "vt320" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | Terminals from VT100 to VT320 (as V300, VT220, VT200) do not need any extra | 
					
						
							|  |  |  | keyboard mappings.  They should work perfectly as they are, including arrows, | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | Ins, Del buttons etc., except Backspace in GUI mode.  To solve it, add to | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | .gvimrc: > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	inoremap <Del> <BS> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Vim will also recognize that they are fast terminals. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-11-25 15:09:35 +00:00
										 |  |  | If you're using Vim on remote host or through a very slow connection, you | 
					
						
							|  |  |  | might want to reset fast terminal option with: > | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	set nottyfast   " set terminal to slow mode | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 8.7 Hex-editing and other external tools | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | A very important difference between OpenVMS and other systems is that VMS uses | 
					
						
							|  |  |  | special commands to execute executables: > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	RUN <path>filename | 
					
						
							|  |  |  | 	MCR <path>filename <parameters> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | OpenVMS users always have to be aware that the Vim command :! "just" drop them | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | to DCL prompt.  This feature is possible to use without any problem with all | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | DCL commands, but if we want to execute some programs such as XXD, CTAGS, JTAGS, | 
					
						
							|  |  |  | etc.  we're running into trouble if we follow the Vim documentation (see: help | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | xxd). | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Solution: Execute with the MC command and add the full path to the executable. | 
					
						
							|  |  |  | Example: Instead of :%!xxd command use: > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	:%!mc vim:xxd | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ... or in general: > | 
					
						
							|  |  |  | 	:!mc <path>filename <parameters> | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | Note: You can use XXD and CTAGS from GUI menu. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | To customize ctags it is possible to define the logical $CTAGS with standard | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | parameters as: > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	define/nolog CTAGS "--totals -o sys$login:tags" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | For additional information, please read :help tagsearch and CTAGS | 
					
						
							|  |  |  | documentation at http://ctags.sourceforge.net/ctags.html. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | (Zoltan Arpadffy, Vim 5.6-70) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 8.8 Sourcing vimrc and gvimrc | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | If you want to use your .vimrc and .gvimrc from other platforms (e.g. Windows) | 
					
						
							|  |  |  | you can get in trouble if you ftp that file(s): VMS has different end-of-line | 
					
						
							|  |  |  | indication. | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | The symptom is that Vim is not sourcing your .vimrc/.gvimrc, even if you say: | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | > | 
					
						
							|  |  |  | 	:so sys$login:.vimrc | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | One trick is to compress (e.g. zip) the files on the other platform and | 
					
						
							|  |  |  | uncompress it on VMS; if you have the same symptom, try to create the files | 
					
						
							|  |  |  | with copy-paste (for this you need both op. systems reachable from one | 
					
						
							|  |  |  | machine, e.g. an Xterm on Windows or telnet to Windows from VMS). | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | (Sandor Kopanyi, <sandor.kopanyi@mailbox.hu> Vim 6.0a) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 8.9 Printing from Vim | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | To be able to print from Vim (running in GUI mode) under VMS you have to set | 
					
						
							|  |  |  | up $TMP logical which should point to some temporary directory and logical | 
					
						
							|  |  |  | SYS$PRINT to your default print queue. | 
					
						
							|  |  |  | Example: > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	$define SYS$PRINT HP5ANSI | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | You can print out the whole buffer or just the marked area. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | More info under :help hardcopy | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | (Zoltan Arpadffy, Vim 6.0c) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 8.10 Setting up the symbols | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-06-05 14:44:35 +02:00
										 |  |  | When I use gvim this way and press CTRL-Y in the parent terminal, gvim exits. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | I now use a different symbol that seems to work OK and fixes the problem. | 
					
						
							|  |  |  | I suggest this instead: > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	$ GV*IM:==SPAWN/NOWAIT/INPUT=NLA0: MCR VIM:VIM.EXE -G -GEOMETRY 80X40 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | The /INPUT=NLA0: separates the standard input of the gvim process from the | 
					
						
							|  |  |  | parent terminal, to block signals from the parent window. | 
					
						
							| 
									
										
										
										
											2017-06-05 14:44:35 +02:00
										 |  |  | Without the -GEOMETRY, the gvim window size will be minimal and the menu | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | will be confused after a window-resize. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | (Carlo Mekenkamp, Coen Engelbarts, Vim 6.0ac) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 8.11 diff and other GNU programs | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | From 6.0 diff functionality has been implemented, but OpenVMS does not use | 
					
						
							|  |  |  | GNU/Unix like diff therefore built in diff does not work. | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | There is a simple solution to solve this anomaly.  Install a Unix like diff | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | and Vim will work perfectly in diff mode too.  You just have to redefine your | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | diff program as: > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	define /nolog diff <GNU_PATH>diff.exe | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Another, more sophisticated solution is described below (8.12 diff-mode) | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | There are other programs such as patch, make etc that may cause the same | 
					
						
							|  |  |  | problems.  At www.polarhome.com is possible to download an GNU package for | 
					
						
							|  |  |  | Alpha and VAX boxes that is meant to solve GNU problems on OpenVMS. | 
					
						
							|  |  |  | (Zoltan Arpadffy, Vim 6.1) | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 8.12 diff-mode | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-06 20:52:26 +01:00
										 |  |  | Vim 6.0 and higher supports Vim diff-mode (See |new-diff-mode|, |diff-mode| | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | and |08.7|).  This uses the external program 'diff' and expects a Unix-like | 
					
						
							|  |  |  | output format from diff.  The standard VMS diff has a different output | 
					
						
							| 
									
										
										
										
											2010-01-06 20:52:26 +01:00
										 |  |  | format.  To use Vim on VMS in diff-mode, you need to: | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  |     1 Install a Unix-like diff program, e.g. GNU diff | 
					
						
							| 
									
										
										
										
											2010-01-06 20:52:26 +01:00
										 |  |  |     2 Tell Vim to use the Unix-like diff for diff-mode. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | You can download GNU diff from the VIM-VMS website, it is one of the GNU | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | tools in http://www.polarhome.com/vim/files/gnu_tools.zip.  I suggest to | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | unpack it in a separate directory "GNU" and create a logical GNU: that | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | points to that directory, e.g: > | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |    DEFINE GNU    <DISK>:[<DIRECTORY>.BIN.GNU] | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | You may also want to define a symbol GDIFF, to use the GNU diff from the DCL | 
					
						
							|  |  |  | prompt: > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |    GDIFF :==     $GNU:DIFF.EXE | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-06 20:52:26 +01:00
										 |  |  | Now you need to tell Vim to use the new diff program.  Take the example | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | settings from |diff-diffexpr| and change the call to the external diff | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | program to the new diff on VMS.  Add this to your .vimrc file: > | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |      " Set up vimdiff options | 
					
						
							|  |  |  |        if v:version >= 600 | 
					
						
							|  |  |  | 	" Use GNU diff on VMS | 
					
						
							|  |  |  | 	set diffexpr=MyDiff() | 
					
						
							|  |  |  | 	function MyDiff() | 
					
						
							|  |  |  | 	   let opt = "" | 
					
						
							|  |  |  | 	   if &diffopt =~ "icase" | 
					
						
							| 
									
										
										
										
											2022-02-26 12:25:45 +00:00
										 |  |  | 	     let opt = opt .. "-i " | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 	   endif | 
					
						
							|  |  |  | 	   if &diffopt =~ "iwhite" | 
					
						
							| 
									
										
										
										
											2022-02-26 12:25:45 +00:00
										 |  |  | 	     let opt = opt .. "-b " | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 	   endif | 
					
						
							| 
									
										
										
										
											2022-02-26 12:25:45 +00:00
										 |  |  | 	   silent execute "!mc GNU:diff.exe -a " .. opt .. v:fname_in .. " " ..  v:fname_new .. | 
					
						
							|  |  |  | 		\  " > " .. v:fname_out | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 	endfunction | 
					
						
							|  |  |  |       endif | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-06 20:52:26 +01:00
										 |  |  | You can now use Vim in diff-mode, e.g. to compare two files in read-only | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | mode: > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     $ VIM -D/R <FILE1> <FILE2> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | You can also define new symbols for vimdiff, e.g.: > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     $ VIMDIFF     :== 'VIM' -D/R | 
					
						
							|  |  |  |     $ GVIMDIFF    :== 'GVIM' -D/R | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | You can now compare files in 4 ways: > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     1. VMS  diff:  $ DIFF     <FILE1> <FILE2> | 
					
						
							|  |  |  |     2. GNU  diff:  $ GDIFF    <FILE1> <FILE2> | 
					
						
							|  |  |  |     3. VIM  diff:  $ VIMDIFF  <FILE1> <FILE2> | 
					
						
							|  |  |  |     4. GVIM diff:  $ GVIMDIFF <FILE1> <FILE2> | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | (Coen Engelbarts, Vim 6.1) | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 8.13 Allow '$' in C keywords | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | DEC C uses many identifiers with '$' in them.  This is not allowed in ANSI C, | 
					
						
							| 
									
										
										
										
											2010-01-06 20:52:26 +01:00
										 |  |  | and Vim recognises the '$' as the end of the identifier.  You can change this | 
					
						
							| 
									
										
										
										
											2010-07-17 12:47:16 +02:00
										 |  |  | with the 'iskeyword' option. | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | Add this command to your .vimrc file: > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     autocmd FileType c,cpp,cs  set iskeyword+=$ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | You can also create the file(s) $VIM/FTPLUGIN/C.VIM (and/or CPP.VIM and | 
					
						
							|  |  |  | CS.VIM) and add this command: > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	set iskeyword+=$ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Now word-based commands, e.g. the '*'-search-command and the CTRL-] | 
					
						
							| 
									
										
										
										
											2005-04-15 21:00:38 +00:00
										 |  |  | tag-lookup, work on the whole identifier.  (Ctags on VMS also supports '$' in | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | C keywords since ctags version 5.1.) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | (Coen Engelbarts, Vim 6.1) | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 8.14 VIMTUTOR for beginners | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | The VIMTUTOR.COM DCL script can help Vim beginners to learn/make their first | 
					
						
							|  |  |  | steps with Vim on OpenVMS.  Depending of binary distribution you may start it | 
					
						
							|  |  |  | with: > | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	@vim:vimtutor | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | (Thomas.R.Wyant III, Vim 6.1) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | 8.16 Slow start in console mode issue | 
					
						
							| 
									
										
										
										
											2008-09-01 14:51:37 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-06 20:52:26 +01:00
										 |  |  | As GUI/GTK Vim works equally well in console mode, many administrators | 
					
						
							| 
									
										
										
										
											2008-09-01 14:51:37 +00:00
										 |  |  | deploy those executables system wide. | 
					
						
							|  |  |  | Unfortunately, on a remote slow connections GUI/GTK executables behave rather | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | slow when user wants to run Vim just in the console mode - because of X | 
					
						
							|  |  |  | environment detection timeout. | 
					
						
							| 
									
										
										
										
											2008-09-01 14:51:37 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | Luckily, there is a simple solution for that. Administrators need to deploy | 
					
						
							|  |  |  | both GUI/GTK build and just console build executables, like below: > | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-09-19 19:01:21 +02:00
										 |  |  |     |- vim73 | 
					
						
							| 
									
										
										
										
											2008-09-01 14:51:37 +00:00
										 |  |  |     |----- doc | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  |     |----- syntax | 
					
						
							| 
									
										
										
										
											2008-09-01 14:51:37 +00:00
										 |  |  |        vimrc    (system rc files) | 
					
						
							|  |  |  |        gvimrc | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  |        gvim.exe (the renamed GUI or GTK built vim.exe) | 
					
						
							|  |  |  |        vim.exe  (the console only executable) | 
					
						
							| 
									
										
										
										
											2008-09-01 14:51:37 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | Define system symbols like below in for ex in LOGIN.COM or SYLOGIN.COM: > | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-09-19 19:01:21 +02:00
										 |  |  | 	$ define/nolog VIM RF10:[UTIL.VIM73] ! where you VIM directory is | 
					
						
							| 
									
										
										
										
											2008-09-01 14:51:37 +00:00
										 |  |  | 	$ vi*m  :== mcr VIM:VIM.EXE | 
					
						
							|  |  |  | 	$ gvi*m :== mcr VIM:GVIM.EXE | 
					
						
							|  |  |  | 	$ ! or you can try to spawn with | 
					
						
							|  |  |  | 	$ gv*im :== spawn/nowait/input=NLA0 mcr VIM:GVIM.EXE -g -GEOMETRY 80x40 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | Like this, users that do not have X environment and want to use Vim just in | 
					
						
							| 
									
										
										
										
											2008-09-01 14:51:37 +00:00
										 |  |  | console mode can avoid performance problems. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | (Zoltan Arpadffy, Vim 7.2) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 8.15 Common VIM directory - different architectures | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | In a cluster that contains nodes with different architectures like below: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | $show cluster | 
					
						
							|  |  |  | View of Cluster from system ID 11655  node: TOR                                                                     18-AUG-2008 11:58:31 | 
					
						
							|  |  |  | +---------------------------------+ | 
					
						
							| 
									
										
										
										
											2018-05-06 17:57:30 +02:00
										 |  |  | |        SYSTEMS        | MEMBERS | | 
					
						
							|  |  |  | +-----------------------+---------| | 
					
						
							|  |  |  | |  NODE  |   SOFTWARE   |  STATUS | | 
					
						
							|  |  |  | +--------+--------------+---------| | 
					
						
							|  |  |  | | TOR    | VMS V7.3-2   | MEMBER  | | 
					
						
							|  |  |  | | TITAN2 | VMS V8.3     | MEMBER  | | 
					
						
							|  |  |  | | ODIN   | VMS V7.3-2   | MEMBER  | | 
					
						
							| 
									
										
										
										
											2008-09-01 14:51:37 +00:00
										 |  |  | +---------------------------------+ | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-06 20:52:26 +01:00
										 |  |  | It is convenient to have a common VIM directory but execute different | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | executables. | 
					
						
							|  |  |  | There are several solutions for this problem: | 
					
						
							| 
									
										
										
										
											2008-09-01 14:51:37 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-06 20:52:26 +01:00
										 |  |  | Solution 1.  All executables in the same directory with different names | 
					
						
							| 
									
										
										
										
											2008-09-01 14:51:37 +00:00
										 |  |  | This is easily done with the following script that can be added | 
					
						
							|  |  |  | to the login.com or sylogin.com: > | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	$ if f$getsyi("NODE_HWTYPE") .eqs. "VAX" | 
					
						
							|  |  |  | 	$ then | 
					
						
							|  |  |  | 	$       say "VAX platform" | 
					
						
							|  |  |  | 	$       vi*m:== mcr vim:VIM.EXE_VAX | 
					
						
							|  |  |  | 	$ endif | 
					
						
							|  |  |  | 	$ if f$getsyi("NODE_HWTYPE") .eqs. "ALPH" | 
					
						
							|  |  |  | 	$ then | 
					
						
							|  |  |  | 	$       say "ALPHA platform" | 
					
						
							|  |  |  | 	$       vi*m :== mcr vim:VIM.EXE_AXP | 
					
						
							|  |  |  | 	$ endif | 
					
						
							|  |  |  | 	$ if f$getsyi("ARCH_NAME") .eqs. "IA64" | 
					
						
							|  |  |  | 	$ then | 
					
						
							|  |  |  | 	$      say "IA64 platform" | 
					
						
							|  |  |  | 	$      vi*m :== mcr vim:VIM.EXE_IA64 | 
					
						
							|  |  |  | 	$ endif | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-06 20:52:26 +01:00
										 |  |  | Solution 2.  Different directories: > | 
					
						
							| 
									
										
										
										
											2008-09-01 14:51:37 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	$ if f$getsyi("NODE_HWTYPE") .eqs. "VAX" | 
					
						
							|  |  |  | 	$ then | 
					
						
							|  |  |  | 	$       say "VAX platform" | 
					
						
							|  |  |  | 	$       define/nolog VIM RF10:[UTIL.VAX_EXE] ! VAX executables | 
					
						
							|  |  |  | 	$ endif | 
					
						
							|  |  |  | 	$ if f$getsyi("NODE_HWTYPE") .eqs. "ALPH" | 
					
						
							|  |  |  | 	$ then | 
					
						
							|  |  |  | 	$       say "ALPHA platform" | 
					
						
							|  |  |  | 	$       define/nolog VIM RF10:[UTIL.AXP_EXE] ! AXP executables | 
					
						
							|  |  |  | 	$ endif | 
					
						
							|  |  |  | 	$ if f$getsyi("ARCH_NAME") .eqs. "IA64" | 
					
						
							|  |  |  | 	$ then | 
					
						
							|  |  |  | 	$      say "IA64 platform" | 
					
						
							|  |  |  | 	$      define/nolog VIM RF10:[UTIL.IA64_EXE] ! IA64 executables | 
					
						
							|  |  |  | 	$ endif | 
					
						
							| 
									
										
										
										
											2024-02-25 15:42:52 +08:00
										 |  |  | 	$! VIMRUNTIME must be defined in order to find runtime files | 
					
						
							| 
									
										
										
										
											2010-09-19 19:01:21 +02:00
										 |  |  | 	$ define/nolog VIMRUNTIME RF10:[UTIL.VIM73] | 
					
						
							| 
									
										
										
										
											2008-09-01 14:51:37 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-06 20:52:26 +01:00
										 |  |  | A good example for this approach is the [GNU]gnu_tools.com script from | 
					
						
							|  |  |  | GNU_TOOLS.ZIP package downloadable from http://www.polarhome.com/vim/ | 
					
						
							| 
									
										
										
										
											2008-09-01 14:51:37 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | (Zoltan Arpadffy, Vim 7.2) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | ============================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 9. VMS related changes					*vms-changes* | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-12-05 16:04:23 +01:00
										 |  |  | Version 9.0 (2023 Nov 27) | 
					
						
							|  |  |  | - Vim is ported to the X86_64 architecture | 
					
						
							| 
									
										
										
										
											2023-12-09 15:18:33 +08:00
										 |  |  | 	- IMPORTANT: because of the getline function name used in structs like in ex_cmds.h | 
					
						
							| 
									
										
										
										
											2023-12-05 16:04:23 +01:00
										 |  |  | 	on X86_64 the CRTL_VER is kept under 80500000 level. The proper solution would be | 
					
						
							|  |  |  | 	to rename the getline function to something else in the struct (and in all places | 
					
						
							|  |  |  | 	it is used) - and avoiding to use POSIX functions in structs, but this change would | 
					
						
							| 
									
										
										
										
											2023-12-14 20:36:32 +01:00
										 |  |  | 	impact on all other operating systems. (added to the VMS TODO list) | 
					
						
							| 
									
										
										
										
											2023-12-05 16:04:23 +01:00
										 |  |  | 	Read more about at https://forum.vmssoftware.com/viewtopic.php?f=38&t=8914&p=20049 | 
					
						
							|  |  |  | - os_vms_conf.h includes have been reviewed for all architectures | 
					
						
							|  |  |  | - added support for the MODIFIED_BY define | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Version 8.2 (2020 Feb 6) | 
					
						
							| 
									
										
										
										
											2021-01-02 16:39:53 +01:00
										 |  |  | - make all changes needed for clean compile build of v8.2 on VMS on all platforms | 
					
						
							| 
									
										
										
										
											2021-06-13 19:02:49 +02:00
										 |  |  | - fix the call mkdir bug (vicente_polo@yahoo.es) | 
					
						
							| 
									
										
										
										
											2021-01-11 19:40:15 +01:00
										 |  |  | - test on VSI OpenVMS Alpha and Itanium platforms | 
					
						
							|  |  |  | - added LUA support | 
					
						
							|  |  |  | - added XPM support - Motif GUI with toolbar on all platforms | 
					
						
							| 
									
										
										
										
											2021-06-13 19:02:49 +02:00
										 |  |  | - XPM v3.4.11 libraries for IA64, AXP and VAX are added | 
					
						
							|  |  |  | - start integrating the new test scripts | 
					
						
							| 
									
										
										
										
											2021-01-02 16:39:53 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-12-05 16:04:23 +01:00
										 |  |  | Version 8.1 (2019 Jan 9) | 
					
						
							| 
									
										
										
										
											2019-01-18 22:59:53 +01:00
										 |  |  | - make necessary changes to build v8.1 on VMS | 
					
						
							| 
									
										
										
										
											2023-12-05 16:04:23 +01:00
										 |  |  | - GTK1.2.10 on VAX | 
					
						
							| 
									
										
										
										
											2019-01-18 22:59:53 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-12-05 16:04:23 +01:00
										 |  |  | Version 8.0 (2016 Nov 21) | 
					
						
							| 
									
										
										
										
											2019-01-18 22:59:53 +01:00
										 |  |  | - solve the 100% cpu usage issue while waiting for a keystroke | 
					
						
							|  |  |  | - correct the VMS warnings and errors around handling the INFINITY (used in json.c) | 
					
						
							| 
									
										
										
										
											2019-02-03 15:27:20 +01:00
										 |  |  | - minor VMS port related changes | 
					
						
							|  |  |  | - correct the make_vms.mms file for 8.0 | 
					
						
							|  |  |  | - fix [.TESTDIR]make_vms.mms for 8.0 | 
					
						
							| 
									
										
										
										
											2019-01-18 22:59:53 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-12-05 16:04:23 +01:00
										 |  |  | Version 7.4 (2013 Aug 10) | 
					
						
							| 
									
										
										
										
											2017-06-05 14:44:35 +02:00
										 |  |  | - Undo: VMS can not handle more than one dot in the filenames use "dir/name" -> "dir/_un_name" | 
					
						
							| 
									
										
										
										
											2014-03-12 16:51:55 +01:00
										 |  |  |   add _un_ at the beginning to keep the extension | 
					
						
							|  |  |  | - correct swap file name wildcard handling | 
					
						
							|  |  |  | - handle iconv usage correctly | 
					
						
							|  |  |  | - do not optimize on vax - otherwise it hangs compiling crypto files | 
					
						
							|  |  |  | - fileio.c fix the comment | 
					
						
							| 
									
										
										
										
											2017-06-05 14:44:35 +02:00
										 |  |  | - correct RealWaitForChar | 
					
						
							| 
									
										
										
										
											2014-03-12 16:51:55 +01:00
										 |  |  | - after 7.4-119 use different functions lib$cvtf_to_internal_time because Alpha and VAX have | 
					
						
							|  |  |  |   G_FLOAT but IA64 uses IEEE float otherwise Vim crashes | 
					
						
							| 
									
										
										
										
											2014-08-29 15:12:19 +02:00
										 |  |  | - guard against crashes that are caused by mixed filenames | 
					
						
							| 
									
										
										
										
											2014-03-12 16:51:55 +01:00
										 |  |  | - [TESTDIR]make_vms.mms changed to see the output files | 
					
						
							|  |  |  | - Improve tests, update known issues | 
					
						
							|  |  |  | - minor compiler warnings fixed | 
					
						
							|  |  |  | - CTAGS 5.8 +regex included | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-12-05 16:04:23 +01:00
										 |  |  | Version 7.3 (2010 Aug 15) | 
					
						
							| 
									
										
										
										
											2010-07-28 19:38:16 +02:00
										 |  |  | - CTAGS 5.8 included | 
					
						
							|  |  |  | - VMS compile warnings fixed - floating-point overflow warning corrected on VAX | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | - filepath completion corrected - too many chars were escaped in filename | 
					
						
							| 
									
										
										
										
											2010-07-28 19:38:16 +02:00
										 |  |  |   and shell commands | 
					
						
							|  |  |  | - the following plugins are included into VMS runtime: | 
					
						
							|  |  |  | 	genutils 2.4, multiselect 2.2, multvals 3.1, selectbuf 4.3, | 
					
						
							|  |  |  | 	bufexplorer 7.1.7, taglist 4.5 | 
					
						
							|  |  |  | - minor changes in vimrc (just in VMS runtime) | 
					
						
							| 
									
										
										
										
											2008-09-01 14:51:37 +00:00
										 |  |  | - make_vms.mms - HUGE model is the default | 
					
						
							|  |  |  | - [TESTDIR]make_vms.mms include as many tests possible | 
					
						
							|  |  |  | - modify test30 and test54 for VMS | 
					
						
							|  |  |  | - enable FLOAT feature in VMS port | 
					
						
							| 
									
										
										
										
											2010-07-28 19:38:16 +02:00
										 |  |  | - os_vms.txt updated | 
					
						
							| 
									
										
										
										
											2008-09-01 14:51:37 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | Version 7.2 (2008 Aug 9) | 
					
						
							|  |  |  | - VCF files write corrected | 
					
						
							|  |  |  | - CTAGS 5.7 included | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | - corrected make_vms.mms (on VAX gave syntax error) | 
					
						
							| 
									
										
										
										
											2008-09-01 14:51:37 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | Version 7.1 (2007 Jun 15) | 
					
						
							| 
									
										
										
										
											2011-09-14 17:55:08 +02:00
										 |  |  | - create TAGS file from menu | 
					
						
							| 
									
										
										
										
											2008-09-01 14:51:37 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | Version 7 (2006 May 8) | 
					
						
							| 
									
										
										
										
											2006-03-02 22:40:52 +00:00
										 |  |  | - Improved low level char input (affects just console mode) | 
					
						
							| 
									
										
										
										
											2008-09-01 14:51:37 +00:00
										 |  |  | - Fixed plugin bug | 
					
						
							|  |  |  | - CTAGS 5.6 included | 
					
						
							| 
									
										
										
										
											2006-03-02 22:40:52 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | Version 6.4 (2005 Oct 15) | 
					
						
							| 
									
										
										
										
											2005-07-12 22:40:29 +00:00
										 |  |  | - GTKLIB and Vim build on IA64 | 
					
						
							|  |  |  | - colors in terminal mode | 
					
						
							|  |  |  | - syntax highlighting in terminal mode | 
					
						
							|  |  |  | - write problem fixed (extra CR) | 
					
						
							|  |  |  | - ESC and ESC sequence recognition in terminal mode | 
					
						
							|  |  |  | - make file changed to support new MMS version | 
					
						
							|  |  |  | - env variable expansion in path corrected | 
					
						
							|  |  |  | - printing problems corrected | 
					
						
							|  |  |  | - help text added for case insensitive arguments | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | Version 6.3 (2004 May 10) | 
					
						
							|  |  |  | - Improved vms_read function | 
					
						
							|  |  |  | - CTAGS v5.5.4 included | 
					
						
							|  |  |  | - Documentation corrected and updated | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Version 6.2 (2003 May 7) | 
					
						
							|  |  |  | - Corrected VMS system call results | 
					
						
							|  |  |  | - Low level character input is rewritten | 
					
						
							|  |  |  | - Correction in tag and quickfix handling | 
					
						
							|  |  |  | - First GTK build | 
					
						
							|  |  |  | - Make file changes | 
					
						
							|  |  |  |     - GTK feature added | 
					
						
							|  |  |  |     - Define for OLD_VMS | 
					
						
							|  |  |  |     - OpenVMS version 6.2 or older | 
					
						
							|  |  |  | - Documentation updated with GTK features | 
					
						
							|  |  |  | - CTAGS v5.5 included | 
					
						
							|  |  |  | - VMS VIM tutor created | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Version 6.1 (2002 Mar 25) | 
					
						
							|  |  |  | - TCL init_tcl() problem fixed | 
					
						
							|  |  |  | - CTAGS v5.4 included | 
					
						
							|  |  |  | - GNU tools binaries for OpenVMS | 
					
						
							|  |  |  | - Make file changes | 
					
						
							|  |  |  |     - PERL, PYTHON and TCL support improved | 
					
						
							|  |  |  |     - InstallVMS.txt has a detailed description HOWTO build | 
					
						
							|  |  |  | - VMS/Unix file handling rewritten | 
					
						
							|  |  |  | - Minor casting and bug fixes | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Version 6.0 (2001 Sep 28) | 
					
						
							|  |  |  | - Unix and VMS code has been merged | 
					
						
							|  |  |  | 	- separated "really" VMS related code | 
					
						
							|  |  |  | 	- included all possible Unix functionality | 
					
						
							|  |  |  | 	- simplified or deleted the configuration files | 
					
						
							|  |  |  | 	- makefile MAKE_VMS.MMS reviewed | 
					
						
							|  |  |  | - menu changes (fixed printing, CTAGS and XXD usage) | 
					
						
							|  |  |  | - fixed variable RMS record format handling anomaly | 
					
						
							|  |  |  | - corrected syntax, ftplugin etc files load | 
					
						
							|  |  |  | - changed expand_wildcards and expandpath functions to work more general | 
					
						
							|  |  |  | - created OS_VMS_FILTER.COM - DECC->VAXC pre-processor directive convert | 
					
						
							|  |  |  |   script. | 
					
						
							|  |  |  | - Improved code's VAXC and new DECC compilers compatibility | 
					
						
							|  |  |  | - changed quickfix parameters: | 
					
						
							|  |  |  | 	- errormessage format to suite DECC | 
					
						
							|  |  |  | 	- search, make and other commands to suite VMS system | 
					
						
							|  |  |  | - updated and renamed MMS make files for Vim and CTAGS. | 
					
						
							|  |  |  | - CTAGS has been removed from source distribution of Vim but it will remain | 
					
						
							|  |  |  |   in OpenVMS binary distributions. | 
					
						
							|  |  |  | - simplified build/configuration procedure | 
					
						
							|  |  |  | - created INSTALLvms.txt - detailed compiling instructions under VMS. | 
					
						
							|  |  |  | - updated test scripts. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Version 5.8 (2001 Jun 1) | 
					
						
							|  |  |  | - OS_VMS.TXT updated with new features. | 
					
						
							|  |  |  | - other minor fixes. | 
					
						
							|  |  |  | - documentation updated | 
					
						
							|  |  |  | - this version had been tested much more than any other OpenVMS version | 
					
						
							|  |  |  |   earlier | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Version 5.7 (2000 Jun 24) | 
					
						
							|  |  |  | - New CTAGS v5.0 in distribution | 
					
						
							|  |  |  | - Documentation updated | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Version 5.6 (2000 Jan 17) | 
					
						
							|  |  |  | - VMS filename related changes: | 
					
						
							|  |  |  | 	- version handling (open everything, save to new version) | 
					
						
							|  |  |  | 	- correct file extension matching for syntax (version problem) | 
					
						
							|  |  |  | 	- handle <,> characters and passwords in directory definition | 
					
						
							|  |  |  | 	- handle internode/remote invocation and editing with passwords | 
					
						
							|  |  |  | 	- OpenVMS files will be treated case insensitive from now | 
					
						
							|  |  |  | 	- corrected response of expand("%:.") etc path related functions | 
					
						
							|  |  |  | 	(in one word: VMS directory handling internally) | 
					
						
							|  |  |  | - version command | 
					
						
							|  |  |  | 	- corrected (+,-) information data | 
					
						
							|  |  |  | 	- added compiler and OS version | 
					
						
							|  |  |  | 	- added user and host information | 
					
						
							|  |  |  | 	- resolving $VIM and $VIMRUNTIME logicals | 
					
						
							|  |  |  | - VMS port is in MAX_FEAT (maximum features) club with Unix, Win32 and OS/2. | 
					
						
							|  |  |  | 	- enabled farsi, rightleft etc. features | 
					
						
							|  |  |  | 	- undo level raised up to 1000 | 
					
						
							|  |  |  | - Updated OS_VMS.MMS file. | 
					
						
							|  |  |  | 	- maximum features ON is default | 
					
						
							|  |  |  | 	- Vim is compilable with +perl, +python and +tcl features. | 
					
						
							|  |  |  | 	- improved MMK compatibility | 
					
						
							|  |  |  | - Created MAKEFILE_VMS.MMS, makefile for testing Vim during development. | 
					
						
							|  |  |  | - Defined DEC terminal VT320 | 
					
						
							|  |  |  | 	- compatibility for VT3*0, VT2*0 and VT1*0 - ANSI terminals | 
					
						
							|  |  |  | 	  backwards, but not VT340 and newer with colour capability. | 
					
						
							|  |  |  | 	- VT320 is default terminal for OpenVMS | 
					
						
							|  |  |  | 	- these new terminals are also fast ttys (default for OpenVMS). | 
					
						
							|  |  |  | 	- allowed dec_mouse ttym | 
					
						
							|  |  |  | - Updated files vimrc and gvimrc with VMS specific suggestions. | 
					
						
							|  |  |  | - OS_VMS.TXT updated with new features. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Version 5.5 (1999 Dec 3) | 
					
						
							|  |  |  | - Popup menu line crash corrected. | 
					
						
							|  |  |  | - Handle full file names with version numbers. | 
					
						
							|  |  |  | - Directory handling (CD command etc.) | 
					
						
							|  |  |  | - Corrected file name conversion VMS to Unix and v.v. | 
					
						
							|  |  |  | - Correct response of expand wildcards | 
					
						
							|  |  |  | - Recovery is working from this version under VMS as well. | 
					
						
							|  |  |  | - Improved terminal and signal handing. | 
					
						
							|  |  |  | - Improved OS_VMS.TXT | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Version 5.4 (1999 Sep 9) | 
					
						
							|  |  |  | - Cut and paste mismatch corrected. | 
					
						
							|  |  |  | - Motif directories during open and save are corrected. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Version 5.3 (1998 Oct 12) | 
					
						
							|  |  |  | - Minor changes in the code | 
					
						
							|  |  |  | - Standard distribution with +GUI option | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Version 5.1 (1998 Apr 21) | 
					
						
							|  |  |  | - Syntax and DEC C changes in the code | 
					
						
							|  |  |  | - Fixing problems with the /doc subdirectory | 
					
						
							|  |  |  | - Improve OS_VMS.MMS | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Version 4.5 (1996 Dec 16) | 
					
						
							|  |  |  | - First VMS port by Henk Elbers <henk@xs4all.nl> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ============================================================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 10. Authors						*vms-authors* | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | OpenVMS documentation and executables are maintained by: | 
					
						
							| 
									
										
										
										
											2023-12-05 16:04:23 +01:00
										 |  |  | Zoltan Arpadffy <zoltan.arpadffy@gmail.com> | 
					
						
							| 
									
										
										
										
											2008-09-01 14:51:37 +00:00
										 |  |  | OpenVMS Vim page: http://www.polarhome.com/vim/ | 
					
						
							| 
									
										
										
										
											2004-06-13 20:20:40 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | This document uses parts and remarks from earlier authors and contributors | 
					
						
							|  |  |  | of OS_VMS.TXT: | 
					
						
							|  |  |  | 	Charles E. Campbell, Jr. <cec@gryphon.gsfc.nasa.gov> | 
					
						
							|  |  |  | 	Bruce Hunsaker <BNHunsaker@chq.byu.edu> | 
					
						
							|  |  |  | 	Sandor Kopanyi <sandor.kopanyi@mailbox.hu> | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-07-29 15:07:52 +02:00
										 |  |  |  vim:tw=78:ts=8:noet:ft=help:norl: |