comparison runtime/doc/os_vms.txt @ 3082:3502a7f991fc

Updated runtime files.
author Bram Moolenaar <bram@vim.org>
date Wed, 14 Sep 2011 17:55:08 +0200
parents e8a482a7fa6c
children 6ec6b7ff2d43
comparison
equal deleted inserted replaced
3081:1e50bdaa24f8 3082:3502a7f991fc
1 *os_vms.txt* For Vim version 7.3. Last change: 2010 Aug 16 1 *os_vms.txt* For Vim version 7.3. Last change: 2011 Aug 14
2 2
3 3
4 VIM REFERENCE MANUAL 4 VIM REFERENCE MANUAL
5 5
6 6
36 You can download the Vim source code by ftp from the official Vim site: 36 You can download the Vim source code by ftp from the official Vim site:
37 ftp://ftp.vim.org/pub/vim/ 37 ftp://ftp.vim.org/pub/vim/
38 Or use one of the mirrors: 38 Or use one of the mirrors:
39 ftp://ftp.vim.org/pub/vim/MIRRORS 39 ftp://ftp.vim.org/pub/vim/MIRRORS
40 40
41 You will need both the Unix and Extra archives to build vim.exe for VMS.
42 For using Vim's full power you will need the runtime files as well.
43
44 You can download precompiled executables from: 41 You can download precompiled executables from:
45 http://www.polarhome.com/vim/ 42 http://www.polarhome.com/vim/
46 ftp://ftp.polarhome.com/pub/vim/ 43 ftp://ftp.polarhome.com/pub/vim/
47 44
48 To use the precompiled binary version, you need one of these archives: 45 To use the precompiled binary version, you need one of these archives:
73 ============================================================================== 70 ==============================================================================
74 71
75 4. Problems *vms-problems* 72 4. Problems *vms-problems*
76 73
77 The code has been tested under Open VMS 6.2 - 8.2 on Alpha, VAX and IA64 74 The code has been tested under Open VMS 6.2 - 8.2 on Alpha, VAX and IA64
78 platforms with the DEC C compiler. It should work without bigger problems. 75 platforms with the DEC C compiler. It should work without big problems.
79 If your system does not have some include libraries you can tune up in 76 If your system does not have some include libraries you can tune up in
80 OS_VMS_CONF.H file. 77 OS_VMS_CONF.H file.
81 78
82 If you decided to build Vim with +perl, +python, etc. options, first you need 79 If you decided to build Vim with +perl, +python, etc. options, first you need
83 to download OpenVMS distributions of Perl and Python. Build and deploy the 80 to download OpenVMS distributions of Perl and Python. Build and deploy the
86 83
87 Also GTK, XPM library paths should be configured in MAKE_VMS.MMS 84 Also GTK, XPM library paths should be configured in MAKE_VMS.MMS
88 85
89 Note: Under VAX it should work with the DEC C compiler without problems. The 86 Note: Under VAX it should work with the DEC C compiler without problems. The
90 VAX C compiler is not fully ANSI C compatible in pre-processor directives 87 VAX C compiler is not fully ANSI C compatible in pre-processor directives
91 semantics, therefore you have to use a converter program what will do the lion 88 semantics, therefore you have to use a converter program that will do the lion
92 part of the job. For detailed instructions read file INSTALLvms.txt 89 part of the job. For detailed instructions read file INSTALLvms.txt
93 90
94 MMS_VIM.EXE is build together with VIM.EXE, but for XD.EXE you should 91 MMS_VIM.EXE is build together with VIM.EXE, but for XXD.EXE you should
95 change to subdirectory and build it separately. 92 change to a subdirectory and build it separately.
96 93
97 CTAGS is not part of the Vim source distribution anymore, however the OpenVMS 94 CTAGS is not part of the Vim source distribution anymore, however the OpenVMS
98 specific source might contain CTAGS source files as described above. 95 specific source might contain CTAGS source files as described above.
99 You can find more information about CTAGS on VMS at 96 You can find more information about CTAGS on VMS at
100 http://www.polarhome.com/ctags/ 97 http://www.polarhome.com/ctags/
182 You may want to create .vimrc and .gvimrc files in your home directory 179 You may want to create .vimrc and .gvimrc files in your home directory
183 (SYS$LOGIN) to overwrite default settings. 180 (SYS$LOGIN) to overwrite default settings.
184 181
185 The easiest way is just rename example files. You may leave the menu file 182 The easiest way is just rename example files. You may leave the menu file
186 (MENU.VIM) and files vimrc and gvimrc in the original $VIM directory. It will 183 (MENU.VIM) and files vimrc and gvimrc in the original $VIM directory. It will
187 be default setup for all users, and for users it is enough just to have their 184 be the default setup for all users, and for users it is enough to just have
188 own additions or resetting in their home directory in files .vimrc and .gvimrc. 185 their own additions or resetting in their home directory in files .vimrc and
189 It should work without problems. 186 .gvimrc. It should work without problems.
190 187
191 Note: Remember, system rc files (default for all users) don't have a leading 188 Note: Remember, system rc files (default for all users) don't have a leading
192 ".". So, system rc files are: > 189 ".". So, system rc files are: >
193 190
194 $VIM:vimrc 191 $VIM:vimrc
198 and user customized rc files are: > 195 and user customized rc files are: >
199 196
200 sys$login:.vimrc 197 sys$login:.vimrc
201 sys$login:.gvimrc 198 sys$login:.gvimrc
202 199
203 You can check that everything is on the right place with the :version command. 200 You can check that everything is at the right place with the :version command.
204 201
205 Example LOGIN.COM: > 202 Example LOGIN.COM: >
206 203
207 $ define/nolog VIM RF10:[UTIL.VIM] 204 $ define/nolog VIM RF10:[UTIL.VIM]
208 $ vi*m :== mcr VIM:VIM.EXE 205 $ vi*m :== mcr VIM:VIM.EXE
209 $ gv*im:== spawn/nowait/input=NLA0 mcr VIM:VIM.EXE -g -GEOMETRY 80x40 206 $ gv*im:== spawn/nowait/input=NLA0 mcr VIM:VIM.EXE -g -GEOMETRY 80x40
210 $ set disp/create/node=192.168.5.223/trans=tcpip 207 $ set disp/create/node=192.168.5.223/trans=tcpip
211 208
212 Note: This set-up should be enough, if you are working on standalone server or 209 Note: This set-up should be enough, if you are working on a standalone server or
213 clustered environment, but if you want to use Vim as internode editor in 210 clustered environment, but if you want to use Vim as an internode editor in
214 DECNET environment, it will satisfy as well. 211 DECNET environment, it will satisfy as well.
215 You just have to define the "whole" path: > 212 You just have to define the "whole" path: >
216 213
217 $ define VIM "<server_name>[""user password""]::device:<path>" 214 $ define VIM "<server_name>[""user password""]::device:<path>"
218 $ vi*m :== "mcr VIM:VIM.EXE" 215 $ vi*m :== "mcr VIM:VIM.EXE"
219 216
220 As for example: > 217 For example: >
221 218
222 $ define VIM "PLUTO::RF10:[UTIL.VIM]" 219 $ define VIM "PLUTO::RF10:[UTIL.VIM]"
223 $ define VIM "PLUTO""ZAY mypass""::RF10:[UTIL.VIM]" ! if passwd required 220 $ define VIM "PLUTO""ZAY mypass""::RF10:[UTIL.VIM]" ! if passwd required
224 221
225 You can also use the $VIMRUNTIME logical to point to the proper version of Vim 222 You can also use the $VIMRUNTIME logical to point to the proper version of Vim
298 3) Another elegant solution is XDM if you have installed on OpenVMS box. 295 3) Another elegant solution is XDM if you have installed on OpenVMS box.
299 It is possible to work from XDM client as from GUI console. 296 It is possible to work from XDM client as from GUI console.
300 297
301 4) If you are working on MS-Windows or some other non X/Window environment 298 4) If you are working on MS-Windows or some other non X/Window environment
302 you need to set up one X server and run Vim as in point 2. 299 you need to set up one X server and run Vim as in point 2.
303 For MS-Windows there are available free X servers as MIX , Omni X etc., 300 For MS-Windows there are available free X servers as MIX, Omni X etc.,
304 as well as excellent commercial products as eXcursion or ReflectionX with 301 as well as excellent commercial products as eXcursion or ReflectionX with
305 built-in DEC support. 302 built-in DEC support.
306 303
307 Please note, that executables without GUI are slightly faster during startup 304 Please note, that executables without GUI are slightly faster during startup
308 then with enabled GUI in character mode. Therefore, if you do not use GUI 305 than with enabled GUI in character mode. Therefore, if you do not use GUI
309 features, it is worth to choose non GUI executables. 306 features, it is worth to choose non GUI executables.
310 307
311 ============================================================================== 308 ==============================================================================
312 309
313 8. Useful notes *vms-notes* 310 8. Useful notes *vms-notes*
324 8.10 Setting up the symbols 321 8.10 Setting up the symbols
325 8.11 diff and other GNU programs 322 8.11 diff and other GNU programs
326 8.12 diff-mode 323 8.12 diff-mode
327 8.13 Allow '$' in C keywords 324 8.13 Allow '$' in C keywords
328 8.14 VIMTUTOR for beginners 325 8.14 VIMTUTOR for beginners
329 8.15 Slow start in console mode issue 326 8.15 Slow start in console mode issue
330 8.16 Common VIM directory - different architectures 327 8.16 Common VIM directory - different architectures
331 328
332 8.1 Backspace/delete 329 8.1 Backspace/delete
333 330
334 There are backspace/delete key inconsistencies with VMS. 331 There are backspace/delete key inconsistencies with VMS.
335 :fixdel doesn't do the trick, but the solution is: > 332 :fixdel doesn't do the trick, but the solution is: >
358 355
359 :set nobackup " does not create *.*_ backup files 356 :set nobackup " does not create *.*_ backup files
360 :set nowritebackup " does not have any purpose on VMS. It's the 357 :set nowritebackup " does not have any purpose on VMS. It's the
361 " default. 358 " default.
362 359
363 Recovery is working perfect as well from the default swap file. 360 Recovery is working perfectly as well from the default swap file.
364 Read more with :help swapfile 361 Read more with :help swapfile
365 362
366 (Claude Marinier <ClaudeMarinier@xwavesolutions.com> Vim 5.5, Zoltan Arpadffy 363 (Claude Marinier <ClaudeMarinier@xwavesolutions.com> Vim 5.5, Zoltan Arpadffy
367 Vim 5.6) 364 Vim 5.6)
368 365
384 381
385 Note: You may use <,> brackets as well (device:<path>file.ext;version) as 382 Note: You may use <,> brackets as well (device:<path>file.ext;version) as
386 rf10:<user.zay.work>test.c;1 383 rf10:<user.zay.work>test.c;1
387 384
388 (David Elins <delins@foliage.com>, Jerome Lauret 385 (David Elins <delins@foliage.com>, Jerome Lauret
389 <JLAURET@mail.chem.sunysb.edu> Vim 5.6 ) 386 <JLAURET@mail.chem.sunysb.edu> Vim 5.6)
390 387
391 388
392 8.5 Remote host invocation 389 8.5 Remote host invocation
393 390
394 It is possible to use Vim as an internode editor. 391 It is possible to use Vim as an internode editor.
443 builtin_iris-ansi 440 builtin_iris-ansi
444 builtin_debug 441 builtin_debug
445 builtin_dumb 442 builtin_dumb
446 defaulting to 'vt320' 443 defaulting to 'vt320'
447 --- 444 ---
448 The solution is to define default terminal name: > 445 The solution is to define the default terminal name: >
449 446
450 $ ! unknown terminal name. Let us use vt320 or ansi instead. 447 $ ! unknown terminal name. Let us use vt320 or ansi instead.
451 $ ! Note: it's case sensitive 448 $ ! Note: it's case sensitive
452 $ define term "vt320" 449 $ define term "vt320"
453 450
454 Terminals from VT100 to VT320 (as V300, VT220, VT200 ) do not need any extra 451 Terminals from VT100 to VT320 (as V300, VT220, VT200) do not need any extra
455 keyboard mappings. They should work perfect as they are, including arrows, 452 keyboard mappings. They should work perfectly as they are, including arrows,
456 Ins, Del buttons etc., except Backspace in GUI mode. To solve it, add to 453 Ins, Del buttons etc., except Backspace in GUI mode. To solve it, add to
457 .gvimrc: > 454 .gvimrc: >
458 455
459 inoremap <Del> <BS> 456 inoremap <Del> <BS>
460 457
463 If you have some annoying line jumping on the screen between windows add to 460 If you have some annoying line jumping on the screen between windows add to
464 your .vimrc file: > 461 your .vimrc file: >
465 462
466 set ttyfast " set fast terminal 463 set ttyfast " set fast terminal
467 464
468 Note: if you're using Vim on remote host or through very slow connection, it's 465 Note: if you're using Vim on remote host or through a very slow connection, it's
469 recommended to avoid fast terminal option with: > 466 recommended to avoid the fast terminal option with: >
470 467
471 set nottyfast " set terminal to slow mode 468 set nottyfast " set terminal to slow mode
472 469
473 (Zoltan Arpadffy, Vim 5.6) 470 (Zoltan Arpadffy, Vim 5.6)
474 471
481 RUN <path>filename 478 RUN <path>filename
482 MCR <path>filename <parameters> 479 MCR <path>filename <parameters>
483 480
484 OpenVMS users always have to be aware that the Vim command :! "just" drop them 481 OpenVMS users always have to be aware that the Vim command :! "just" drop them
485 to DCL prompt. This feature is possible to use without any problem with all 482 to DCL prompt. This feature is possible to use without any problem with all
486 DCL commands, but if we want to execute some program as XXD, CTAGS, JTAGS etc. 483 DCL commands, but if we want to execute some programs such as XXD, CTAGS, JTAGS,
487 we're running into trouble if we follow the Vim documentation (see: help 484 etc. we're running into trouble if we follow the Vim documentation (see: help
488 xxd). 485 xxd).
489 486
490 Solution: Execute with the MC command and add the full path to the executable. 487 Solution: Execute with the MC command and add the full path to the executable.
491 Example: Instead of :%!xxd command use: > 488 Example: Instead of :%!xxd command use: >
492 489
532 SYS$PRINT to your default print queue. 529 SYS$PRINT to your default print queue.
533 Example: > 530 Example: >
534 531
535 $define SYS$PRINT HP5ANSI 532 $define SYS$PRINT HP5ANSI
536 533
537 You can print out whole buffer or just the marked area. 534 You can print out the whole buffer or just the marked area.
538 More info under :help hardcopy 535 More info under :help hardcopy
539 536
540 (Zoltan Arpadffy, Vim 6.0c) 537 (Zoltan Arpadffy, Vim 6.0c)
541 538
542 539
559 8.11 diff and other GNU programs 556 8.11 diff and other GNU programs
560 557
561 From 6.0 diff functionality has been implemented, but OpenVMS does not use 558 From 6.0 diff functionality has been implemented, but OpenVMS does not use
562 GNU/Unix like diff therefore built in diff does not work. 559 GNU/Unix like diff therefore built in diff does not work.
563 There is a simple solution to solve this anomaly. Install a Unix like diff 560 There is a simple solution to solve this anomaly. Install a Unix like diff
564 and Vim will work perfect in diff mode too. You just have to redefine your 561 and Vim will work perfectly in diff mode too. You just have to redefine your
565 diff program as: > 562 diff program as: >
566 563
567 define /nolog diff <GNU_PATH>diff.exe 564 define /nolog diff <GNU_PATH>diff.exe
568 565
569 Another, more sophisticated solution is described below (8.12 diff-mode) 566 Another, more sophisticated solution is described below (8.12 diff-mode)
570 There are some other programs as patch, make etc that may cause same problems. 567 There are other programs such as patch, make etc that may cause the same
571 At www.polarhome.com is possible to download an GNU package for Alpha and VAX 568 problems. At www.polarhome.com is possible to download an GNU package for
572 boxes that is meant to solve GNU problems on OpenVMS. 569 Alpha and VAX boxes that is meant to solve GNU problems on OpenVMS.
573 ( Zoltan Arpadffy, Vim 6.1) 570 (Zoltan Arpadffy, Vim 6.1)
574 571
575 572
576 8.12 diff-mode 573 8.12 diff-mode
577 574
578 Vim 6.0 and higher supports Vim diff-mode (See |new-diff-mode|, |diff-mode| 575 Vim 6.0 and higher supports Vim diff-mode (See |new-diff-mode|, |diff-mode|
630 1. VMS diff: $ DIFF <FILE1> <FILE2> 627 1. VMS diff: $ DIFF <FILE1> <FILE2>
631 2. GNU diff: $ GDIFF <FILE1> <FILE2> 628 2. GNU diff: $ GDIFF <FILE1> <FILE2>
632 3. VIM diff: $ VIMDIFF <FILE1> <FILE2> 629 3. VIM diff: $ VIMDIFF <FILE1> <FILE2>
633 4. GVIM diff: $ GVIMDIFF <FILE1> <FILE2> 630 4. GVIM diff: $ GVIMDIFF <FILE1> <FILE2>
634 631
635 ( Coen Engelbarts, Vim 6.1) 632 (Coen Engelbarts, Vim 6.1)
636 633
637 634
638 8.13 Allow '$' in C keywords 635 8.13 Allow '$' in C keywords
639 636
640 DEC C uses many identifiers with '$' in them. This is not allowed in ANSI C, 637 DEC C uses many identifiers with '$' in them. This is not allowed in ANSI C,
651 648
652 Now word-based commands, e.g. the '*'-search-command and the CTRL-] 649 Now word-based commands, e.g. the '*'-search-command and the CTRL-]
653 tag-lookup, work on the whole identifier. (Ctags on VMS also supports '$' in 650 tag-lookup, work on the whole identifier. (Ctags on VMS also supports '$' in
654 C keywords since ctags version 5.1.) 651 C keywords since ctags version 5.1.)
655 652
656 ( Coen Engelbarts, Vim 6.1) 653 (Coen Engelbarts, Vim 6.1)
657 654
658 8.14 VIMTUTOR for beginners 655 8.14 VIMTUTOR for beginners
659 656
660 It exits VIMTUTOR.COM DCL script that can help Vim beginners to learn/make 657 The VIMTUTOR.COM DCL script can help Vim beginners to learn/make their first
661 first steps with Vim on OpenVMS. Depending of binary distribution you may 658 steps with Vim on OpenVMS. Depending of binary distribution you may start it
662 start it with: > 659 with: >
663 660
664 @vim:vimtutor 661 @vim:vimtutor
665 662
666 (Thomas.R.Wyant III, Vim 6.1) 663 (Thomas.R.Wyant III, Vim 6.1)
667 664
668 8.14 Slow start in console mode issue 665 8.16 Slow start in console mode issue
669 666
670 As GUI/GTK Vim works equally well in console mode, many administrators 667 As GUI/GTK Vim works equally well in console mode, many administrators
671 deploy those executables system wide. 668 deploy those executables system wide.
672 Unfortunately, on a remote slow connections GUI/GTK executables behave rather 669 Unfortunately, on a remote slow connections GUI/GTK executables behave rather
673 slow when user wants to run Vim just in the console mode - because of X environment detection timeout. 670 slow when user wants to run Vim just in the console mode - because of X
671 environment detection timeout.
674 672
675 Luckily, there is a simple solution for that. Administrators need to deploy 673 Luckily, there is a simple solution for that. Administrators need to deploy
676 both GUI/GTK build and just console build executables, like below: > 674 both GUI/GTK build and just console build executables, like below: >
677 675
678 |- vim73 676 |- vim73
679 |----- doc 677 |----- doc
680 |----- syntax 678 |----- syntax
681 vimrc (system rc files) 679 vimrc (system rc files)
682 gvimrc 680 gvimrc
683 gvim.exe (the renamed GUI or GTK built vim.exe) 681 gvim.exe (the renamed GUI or GTK built vim.exe)
684 vim.exe (the console only executable) 682 vim.exe (the console only executable)
685 683
686 Define system symbols like below in for ex in LOGIN.COM or SYLOGIN.COM: > 684 Define system symbols like below in for ex in LOGIN.COM or SYLOGIN.COM: >
687 685
688 $ define/nolog VIM RF10:[UTIL.VIM73] ! where you VIM directory is 686 $ define/nolog VIM RF10:[UTIL.VIM73] ! where you VIM directory is
689 $ vi*m :== mcr VIM:VIM.EXE 687 $ vi*m :== mcr VIM:VIM.EXE
690 $ gvi*m :== mcr VIM:GVIM.EXE 688 $ gvi*m :== mcr VIM:GVIM.EXE
691 $ ! or you can try to spawn with 689 $ ! or you can try to spawn with
692 $ gv*im :== spawn/nowait/input=NLA0 mcr VIM:GVIM.EXE -g -GEOMETRY 80x40 690 $ gv*im :== spawn/nowait/input=NLA0 mcr VIM:GVIM.EXE -g -GEOMETRY 80x40
693 691
694 692
695 Like this, users that do not have X environment and want to use Vim just in 693 Like this, users that do not have X environment and want to use Vim just in
696 console mode can avoid performance problems. 694 console mode can avoid performance problems.
697 695
698 (Zoltan Arpadffy, Vim 7.2) 696 (Zoltan Arpadffy, Vim 7.2)
699 697
700 8.15 Common VIM directory - different architectures 698 8.15 Common VIM directory - different architectures
712 ¦ TITAN2 ¦ VMS V8.3 ¦ MEMBER ¦ 710 ¦ TITAN2 ¦ VMS V8.3 ¦ MEMBER ¦
713 ¦ ODIN ¦ VMS V7.3-2 ¦ MEMBER ¦ 711 ¦ ODIN ¦ VMS V7.3-2 ¦ MEMBER ¦
714 +---------------------------------+ 712 +---------------------------------+
715 713
716 It is convenient to have a common VIM directory but execute different 714 It is convenient to have a common VIM directory but execute different
717 executables. 715 executables.
718 There are more solutions for this problem: 716 There are several solutions for this problem:
719 717
720 Solution 1. All executables in the same directory with different names 718 Solution 1. All executables in the same directory with different names
721 This is easily done with the following script that can be added 719 This is easily done with the following script that can be added
722 to the login.com or sylogin.com: > 720 to the login.com or sylogin.com: >
723 721
767 9. VMS related changes *vms-changes* 765 9. VMS related changes *vms-changes*
768 766
769 Version 7.3 767 Version 7.3
770 - CTAGS 5.8 included 768 - CTAGS 5.8 included
771 - VMS compile warnings fixed - floating-point overflow warning corrected on VAX 769 - VMS compile warnings fixed - floating-point overflow warning corrected on VAX
772 - filepath completition corrected - too many chars were escaped in filename 770 - filepath completion corrected - too many chars were escaped in filename
773 and shell commands 771 and shell commands
774 - the following plugins are included into VMS runtime: 772 - the following plugins are included into VMS runtime:
775 genutils 2.4, multiselect 2.2, multvals 3.1, selectbuf 4.3, 773 genutils 2.4, multiselect 2.2, multvals 3.1, selectbuf 4.3,
776 bufexplorer 7.1.7, taglist 4.5 774 bufexplorer 7.1.7, taglist 4.5
777 - minor changes in vimrc (just in VMS runtime) 775 - minor changes in vimrc (just in VMS runtime)
782 - os_vms.txt updated 780 - os_vms.txt updated
783 781
784 Version 7.2 (2008 Aug 9) 782 Version 7.2 (2008 Aug 9)
785 - VCF files write corrected 783 - VCF files write corrected
786 - CTAGS 5.7 included 784 - CTAGS 5.7 included
787 - corrected make_vms.mms (on VAX gave syntax error) 785 - corrected make_vms.mms (on VAX gave syntax error)
788 786
789 Version 7.1 (2007 Jun 15) 787 Version 7.1 (2007 Jun 15)
790 - create TAGS file from menu 788 - create TAGS file from menu
791 789
792 Version 7 (2006 May 8) 790 Version 7 (2006 May 8)
793 - Improved low level char input (affects just console mode) 791 - Improved low level char input (affects just console mode)
794 - Fixed plugin bug 792 - Fixed plugin bug
795 - CTAGS 5.6 included 793 - CTAGS 5.6 included