Mercurial > vim
comparison runtime/doc/os_vms.txt @ 236:4707450c2b33
updated for version 7.0066
author | vimboss |
---|---|
date | Fri, 15 Apr 2005 21:00:38 +0000 |
parents | 4102fb4ea781 |
children | 53c36fa7dc29 |
comparison
equal
deleted
inserted
replaced
235:23d380e32c95 | 236:4707450c2b33 |
---|---|
1 *os_vms.txt* For Vim version 7.0aa. Last change: 2004 Jun 16 | 1 *os_vms.txt* For Vim version 7.0aa. Last change: 2005 Apr 01 |
2 | 2 |
3 | 3 |
4 VIM REFERENCE MANUAL | 4 VIM REFERENCE MANUAL |
5 | 5 |
6 | 6 |
67 ============================================================================== | 67 ============================================================================== |
68 | 68 |
69 4. Problems *vms-problems* | 69 4. Problems *vms-problems* |
70 | 70 |
71 The code has been tested under Open VMS 6.2 - 7.3 on Alpha and VAX platforms | 71 The code has been tested under Open VMS 6.2 - 7.3 on Alpha and VAX platforms |
72 with the DECC compiler. It should work without bigger problems. | 72 with the DEC C compiler. It should work without bigger problems. |
73 If it happened that your system does not have some include libraries you can | 73 If your system does not have some include libraries you can tune up in |
74 tune up in OS_VMS_CONF.H file. | 74 OS_VMS_CONF.H file. |
75 | 75 |
76 If you decided to build Vim with +perl, +python, etc. options, first you need | 76 If you decided to build Vim with +perl, +python, etc. options, first you need |
77 to download OpenVMS distributions of Perl and Python. Build and deploy the | 77 to download OpenVMS distributions of Perl and Python. Build and deploy the |
78 libraries and change adequate lines in MAKE_VMS.MMS file. There should not be | 78 libraries and change adequate lines in MAKE_VMS.MMS file. There should not be |
79 problem from Vim side. | 79 a problem from Vim side. |
80 | 80 |
81 Note: Under VAX it should work with DEC C compiler without problem. VAXC | 81 Note: Under VAX it should work with the DEC C compiler without problems. The |
82 compiler is not fully ANSI C compatible in pre-processor directives | 82 VAX C compiler is not fully ANSI C compatible in pre-processor directives |
83 semantics, therefore you have to use a converter program what will do the | 83 semantics, therefore you have to use a converter program what will do the lion |
84 lion part of the job. For detailed instruction read file INSTALLvms.txt | 84 part of the job. For detailed instructions read file INSTALLvms.txt |
85 | 85 |
86 MMS_VIM.EXE is building together with VIM.EXE, but for XD.EXE you should | 86 MMS_VIM.EXE is build together with VIM.EXE, but for XD.EXE you should |
87 change to subdirectory and build it separately. | 87 change to subdirectory and build it separately. |
88 | 88 |
89 CTAGS is not part of Vim source distribution any more, however the OpenVMS | 89 CTAGS is not part of the Vim source distribution anymore, however the OpenVMS |
90 specific source might contain CTAGS source files as it is described above. | 90 specific source might contain CTAGS source files as described above. |
91 You can find more information about CTAGS on VMS at | 91 You can find more information about CTAGS on VMS at |
92 http://www.polarhome.com/ctags/ | 92 http://www.polarhome.com/ctags/ |
93 | 93 |
94 Advanced users may try some acrobatics in FEATURE.H file also. | 94 Advanced users may try some acrobatics in FEATURE.H file also. |
95 | 95 |
96 It is possible to compile with +xfontset +xim options too, but then you have | 96 It is possible to compile with +xfontset +xim options too, but then you have |
97 to set up GUI fonts etc. correctly. See. :help xim from Vim command prompt. | 97 to set up GUI fonts etc. correctly. See :help xim from Vim command prompt. |
98 | 98 |
99 You may want to use GUI with GTK icons, then you have to download and install | 99 You may want to use GUI with GTK icons, then you have to download and install |
100 GTK for OpenVMS or at least runtime shareable images - LIBGTK from | 100 GTK for OpenVMS or at least runtime shareable images - LIBGTK from |
101 polarhome.com | 101 polarhome.com |
102 | 102 |
130 define/nolog VIM device:[path.vim] | 130 define/nolog VIM device:[path.vim] |
131 define/nolog VIMRUNTIME device:[path.vim.vim60] | 131 define/nolog VIMRUNTIME device:[path.vim.vim60] |
132 define/nolog TMP device:[path.tmp] | 132 define/nolog TMP device:[path.tmp] |
133 | 133 |
134 to get vim.exe to find its document, filetype, and syntax files, and to | 134 to get vim.exe to find its document, filetype, and syntax files, and to |
135 specify a directory where temporary files will be located. Copy the "runtime" | 135 specify a directory where temporary files will be located. Copy the "runtime" |
136 subdirectory of the vim distribution to vimruntime. | 136 subdirectory of the vim distribution to vimruntime. |
137 | 137 |
138 Logicals $VIMRUNTIME and $TMP are optional. | 138 Logicals $VIMRUNTIME and $TMP are optional. |
139 | 139 |
140 If $VIMRUNTIME is not set, Vim will guess and try to set up automatically. | 140 If $VIMRUNTIME is not set, Vim will guess and try to set up automatically. |
141 Read more about at :help runtime | 141 Read more about it at :help runtime |
142 | 142 |
143 If $TMP is not set, you will not be able to use some functions as CTAGS, | 143 If $TMP is not set, you will not be able to use some functions as CTAGS, |
144 XXD, printing etc. that use temporary directory for normal operation. | 144 XXD, printing etc. that use temporary directory for normal operation. |
145 $TMP directory should be readable and writable by the user(s). | 145 The $TMP directory should be readable and writable by the user(s). |
146 The easiest way to set up $TMP is to define logical: > | 146 The easiest way to set up $TMP is to define a logical: > |
147 | 147 |
148 define/nolog TMP SYS$SCRATCH | 148 define/nolog TMP SYS$SCRATCH |
149 or as: > | 149 or as: > |
150 define/nolog TMP SYS$LOGIN | 150 define/nolog TMP SYS$LOGIN |
151 | 151 |
153 | 153 |
154 6. Practical usage *vms-usage* | 154 6. Practical usage *vms-usage* |
155 | 155 |
156 Usually, you want to run just one version of Vim on your system, therefore | 156 Usually, you want to run just one version of Vim on your system, therefore |
157 it is enough to dedicate one directory for Vim. | 157 it is enough to dedicate one directory for Vim. |
158 Copy all Vim runtime directory structure to the deployment position. | 158 Copy the whole Vim runtime directory structure to the deployment position. |
159 Add the following lines to your LOGIN.COM (in SYS$LOGIN directory). | 159 Add the following lines to your LOGIN.COM (in SYS$LOGIN directory). |
160 Set up logical $VIM as: > | 160 Set up the logical $VIM as: > |
161 | 161 |
162 $ define VIM device:<path> | 162 $ define VIM device:<path> |
163 | 163 |
164 Set up some symbols: > | 164 Set up some symbols: > |
165 | 165 |
172 Please, check the notes for customization and configuration of symbols. | 172 Please, check the notes for customization and configuration of symbols. |
173 | 173 |
174 You may want to create .vimrc and .gvimrc files in your home directory | 174 You may want to create .vimrc and .gvimrc files in your home directory |
175 (SYS$LOGIN) to overwrite default settings. | 175 (SYS$LOGIN) to overwrite default settings. |
176 | 176 |
177 The easiest way is just rename example files. You may leave the menu file | 177 The easiest way is just rename example files. You may leave the menu file |
178 (MENU.VIM) and files vimrc and gvimrc in the original $VIM directory. It will | 178 (MENU.VIM) and files vimrc and gvimrc in the original $VIM directory. It will |
179 be default setup for all users, and for users is enough just to have their | 179 be default setup for all users, and for users it is enough just to have their |
180 own additions or resetting in home directory in files .vimrc and .gvimrc. | 180 own additions or resetting in their home directory in files .vimrc and .gvimrc. |
181 It should work without problems. | 181 It should work without problems. |
182 | 182 |
183 Note: Remember, system rc files (default for all users) does not have leading | 183 Note: Remember, system rc files (default for all users) don't have a leading |
184 "." So, system rc files are: > | 184 ".". So, system rc files are: > |
185 | 185 |
186 $VIM:vimrc | 186 $VIM:vimrc |
187 $VIM:gvimrc | 187 $VIM:gvimrc |
188 $VIM:menu.vim | 188 $VIM:menu.vim |
189 | 189 |
190 and user's customized rc files are: > | 190 and user customized rc files are: > |
191 | 191 |
192 sys$login:.vimrc | 192 sys$login:.vimrc |
193 sys$login:.gvimrc | 193 sys$login:.gvimrc |
194 | 194 |
195 You can check that everything is on the right place with the :version command. | 195 You can check that everything is on the right place with the :version command. |
201 $ gv*im:== spawn/nowait/input=NLA0 mcr VIM:VIM.EXE -g -GEOMETRY 80x40 | 201 $ gv*im:== spawn/nowait/input=NLA0 mcr VIM:VIM.EXE -g -GEOMETRY 80x40 |
202 $ set disp/create/node=192.168.5.223/trans=tcpip | 202 $ set disp/create/node=192.168.5.223/trans=tcpip |
203 | 203 |
204 Note: This set-up should be enough, if you are working on standalone server or | 204 Note: This set-up should be enough, if you are working on standalone server or |
205 clustered environment, but if you want to use Vim as internode editor in | 205 clustered environment, but if you want to use Vim as internode editor in |
206 DECNET environment, it will satisfy you as well. | 206 DECNET environment, it will satisfy as well. |
207 You just have to define the "whole" path: > | 207 You just have to define the "whole" path: > |
208 | 208 |
209 $ define VIM "<server_name>[""user password""]::device:<path>" | 209 $ define VIM "<server_name>[""user password""]::device:<path>" |
210 $ vi*m :== "mcr VIM:VIM.EXE" | 210 $ vi*m :== "mcr VIM:VIM.EXE" |
211 | 211 |
212 as for example: > | 212 as for example: > |
213 | 213 |
214 $ define VIM "PLUTO::RF10:[UTIL.VIM]" | 214 $ define VIM "PLUTO::RF10:[UTIL.VIM]" |
215 $ define VIM "PLUTO""ZAY mypass""::RF10:[UTIL.VIM]" ! if passwd required | 215 $ define VIM "PLUTO""ZAY mypass""::RF10:[UTIL.VIM]" ! if passwd required |
216 | 216 |
217 You can also use $VIMRUNTIME logical to point to proper version of Vim if you | 217 You can also use the $VIMRUNTIME logical to point to the proper version of Vim |
218 have installed more versions in the same time. If $VIMRUNTIME is not defined | 218 if you have installed more versions at the same time. If $VIMRUNTIME is not |
219 Vim will borrow value from $VIM logical. You can find more information about | 219 defined Vim will borrow its value from the $VIM logical. You can find more |
220 $VIMRUNTIME logical by typing :help runtime as a Vim command. | 220 information about the $VIMRUNTIME logical by typing :help runtime as a Vim |
221 command. | |
221 | 222 |
222 System administrators might want to set up a system wide Vim installation, | 223 System administrators might want to set up a system wide Vim installation, |
223 then add to the SYS$STARTUP:SYLOGICALS.COM > | 224 then add to the SYS$STARTUP:SYLOGICALS.COM > |
224 | 225 |
225 $ define/nolog/sys VIM device:<path> | 226 $ define/nolog/sys VIM device:<path> |
229 | 230 |
230 $ vi*m :== mcr VIM:VIM.EXE | 231 $ vi*m :== mcr VIM:VIM.EXE |
231 $ gv*im:== spawn/nowait/input=NLA0 mcr VIM:VIM.EXE -g -GEOMETRY 80x40 | 232 $ gv*im:== spawn/nowait/input=NLA0 mcr VIM:VIM.EXE -g -GEOMETRY 80x40 |
232 | 233 |
233 | 234 |
234 It will set up normal Vim work environment for every user on the system. | 235 It will set up a normal Vim work environment for every user on the system. |
235 | 236 |
236 ============================================================================== | 237 ============================================================================== |
237 | 238 |
238 7. GUI mode questions *vms-gui* | 239 7. GUI mode questions *vms-gui* |
239 | 240 |
240 OpenVMS in a real mainframe OS, therefore even if it has a GUI console, most of | 241 OpenVMS is a real mainframe OS, therefore even if it has a GUI console, most |
241 the users does not use a native X/Window environment during normal operation. | 242 of the users do not use a native X/Window environment during normal operation. |
242 It is not possible to start Vim in GUI mode "just like that". But anyhow it is | 243 It is not possible to start Vim in GUI mode "just like that". But anyhow it |
243 not too complicate either. | 244 is not too complicated either. |
244 | 245 |
245 First of all: you will need an executable that is built with enabled GUI. | 246 First of all: you will need an executable that is built with the GUI enabled. |
246 | 247 |
247 Second: you need to have installed DECW/Motif on your VMS server, otherwise | 248 Second: you need to have installed DECW/Motif on your VMS server, otherwise |
248 you will get errors that some shareable libraries are missing. | 249 you will get errors that some shareable libraries are missing. |
249 | 250 |
250 Third: If you choose to run Vim with extra feature as GUI/GTK then you need | 251 Third: If you choose to run Vim with extra features such as GUI/GTK then you |
251 GTK installation too or at least GTK runtime environment (LIBGTK etc.) | 252 need a GTK installation too or at least a GTK runtime environment (LIBGTK |
253 etc.). | |
252 | 254 |
253 1) If you are working on the VMS X/Motif console: | 255 1) If you are working on the VMS X/Motif console: |
254 Start Vim with the command: > | 256 Start Vim with the command: > |
255 | 257 |
256 $ mc device:<path>VIM.EXE -g | 258 $ mc device:<path>VIM.EXE -g |
257 < | 259 < |
258 or type :gui as a command to the Vim command prompt. For more info :help gui | 260 or type :gui as a command to the Vim command prompt. For more info :help |
259 | 261 gui |
260 2) If you are working on other X/Window environment as Unix or some remote X | 262 |
261 VMS console. Set up display to your host with: > | 263 2) If you are working on some other X/Window environment like Unix or a remote |
264 X VMS console. Set up display to your host with: > | |
262 | 265 |
263 $ set disp/create/node=<your IP address>/trans=<transport-name> | 266 $ set disp/create/node=<your IP address>/trans=<transport-name> |
264 < | 267 < |
265 and start Vim as in point 1. You can find more help in VMS documentation or | 268 and start Vim as in point 1. You can find more help in VMS documentation or |
266 type: help set disp in VMS prompt. | 269 type: help set disp in VMS prompt. |
267 Examples: > | 270 Examples: > |
268 | 271 |
269 $ set disp/create/node=192.168.5.159 ! default trans is DECnet | 272 $ set disp/create/node=192.168.5.159 ! default trans is DECnet |
270 $ set disp/create/node=192.168.5.159/trans=tcpip ! TCP/IP network | 273 $ set disp/create/node=192.168.5.159/trans=tcpip ! TCP/IP network |
274 For more information type $help set disp in VMS prompt. | 277 For more information type $help set disp in VMS prompt. |
275 | 278 |
276 3) Another elegant solution is XDM if you have installed on OpenVMS box. | 279 3) Another elegant solution is XDM if you have installed on OpenVMS box. |
277 It is possible to work from XDM client as from GUI console. | 280 It is possible to work from XDM client as from GUI console. |
278 | 281 |
279 4) If you are working on MS Windows or other non X/Window environment | 282 4) If you are working on MS-Windows or some other non X/Window environment |
280 You need to set up one X server and run Vim as in point 2. | 283 you need to set up one X server and run Vim as in point 2. |
281 For MS Windows there are available free X servers as MIX , Omni X etc. | 284 For MS-Windows there are available free X servers as MIX , Omni X etc., |
282 as well as excellent commercial products as eXcursion or ReflectionX with | 285 as well as excellent commercial products as eXcursion or ReflectionX with |
283 built in DEC support. | 286 built-in DEC support. |
284 | 287 |
285 Please note, that executables without GUI are slightly faster during startup | 288 Please note, that executables without GUI are slightly faster during startup |
286 then with enabled GUI in character mode. Therefore, if you do not use GUI | 289 then with enabled GUI in character mode. Therefore, if you do not use GUI |
287 features, it is worth to choose non GUI executables. | 290 features, it is worth to choose non GUI executables. |
288 | 291 |
317 (Bruce Hunsaker <BNHunsaker@chq.byu.edu> Vim 5.3) | 320 (Bruce Hunsaker <BNHunsaker@chq.byu.edu> Vim 5.3) |
318 | 321 |
319 | 322 |
320 8.2 Filters | 323 8.2 Filters |
321 | 324 |
322 Vim supports filters; ie. if you have a sort program that can handle | 325 Vim supports filters, i.e., if you have a sort program that can handle |
323 input/output redirection like Unix (<infile >outfile), you could use > | 326 input/output redirection like Unix (<infile >outfile), you could use > |
324 | 327 |
325 :map \s 0!'aqsort<CR> | 328 :map \s 0!'aqsort<CR> |
326 | 329 |
327 (Charles E. Campbell, Jr. <cec@gryphon.gsfc.nasa.gov> Vim 5.4) | 330 (Charles E. Campbell, Jr. <cec@gryphon.gsfc.nasa.gov> Vim 5.4) |
331 | 334 |
332 Vim is saving files into a new file with the next higher file version | 335 Vim is saving files into a new file with the next higher file version |
333 number, try these settings. > | 336 number, try these settings. > |
334 | 337 |
335 :set nobackup " does not create *.*_ backup files | 338 :set nobackup " does not create *.*_ backup files |
336 :set nowritebackup " does not have any purpose on VMS. It's default. | 339 :set nowritebackup " does not have any purpose on VMS. It's the |
340 " default. | |
337 | 341 |
338 Recovery is working perfect as well from the default swap file. | 342 Recovery is working perfect as well from the default swap file. |
339 Read more with :help swapfile | 343 Read more with :help swapfile |
340 | 344 |
341 (Claude Marinier <ClaudeMarinier@xwavesolutions.com> Vim 5.5, Zoltan Arpadffy | 345 (Claude Marinier <ClaudeMarinier@xwavesolutions.com> Vim 5.5, Zoltan Arpadffy |
342 Vim 5.6 ) | 346 Vim 5.6) |
343 | 347 |
344 | 348 |
345 8.4 Directory conversion | 349 8.4 Directory conversion |
346 | 350 |
347 Vim will internally convert any unix-style paths and even mixed unix/VMS | 351 Vim will internally convert any unix-style paths and even mixed unix/VMS |
348 paths into VMS style paths. Some typical conversions resemble: | 352 paths into VMS style paths. Some typical conversions resemble: |
349 | 353 |
350 /abc/def/ghi -> abc:[def]ghi. | 354 /abc/def/ghi -> abc:[def]ghi. |
351 /abc/def/ghi.j -> abc:[def]ghi.j | 355 /abc/def/ghi.j -> abc:[def]ghi.j |
352 /abc/def/ghi.j;2 -> abc:[def]ghi.j;2 | 356 /abc/def/ghi.j;2 -> abc:[def]ghi.j;2 |
353 /abc/def/ghi/jkl/mno -> abc:[def.ghi.jkl]mno. | 357 /abc/def/ghi/jkl/mno -> abc:[def.ghi.jkl]mno. |
375 vi "pluto""zay passwd""::RF10:<USER.ZAY.WORK>TEST.C;1" | 379 vi "pluto""zay passwd""::RF10:<USER.ZAY.WORK>TEST.C;1" |
376 | 380 |
377 Note: syntax is very important, otherwise VMS will recognize more parameters | 381 Note: syntax is very important, otherwise VMS will recognize more parameters |
378 instead of one (resulting with: file not found) | 382 instead of one (resulting with: file not found) |
379 | 383 |
380 2. Set up Vim as your internode editor. If Vim is not installed on your host, | 384 2. Set up Vim as your internode editor. If Vim is not installed on your |
381 just set up your IP address, full Vim path including the server name and run | 385 host, just set up your IP address, the full Vim path including the server name |
382 the command procedure below: > | 386 and run the command procedure below: > |
383 | 387 |
384 $ if (p1 .eqs. "") .OR. (p2 .eqs. "") then goto usage | 388 $ if (p1 .eqs. "") .OR. (p2 .eqs. "") then goto usage |
385 $ set disp/create/node=<your_IP_here>/trans=tcpip | 389 $ set disp/create/node=<your_IP_here>/trans=tcpip |
386 $ define "VIM "<vim_server>""''p1' ''p2'""::<device>:<vim_path>" | 390 $ define "VIM "<vim_server>""''p1' ''p2'""::<device>:<vim_path>" |
387 $ vi*m :== "mcr VIM:VIM.EXE" | 391 $ vi*m :== "mcr VIM:VIM.EXE" |
390 $ usage: | 394 $ usage: |
391 $ write sys$output " Please enter username and password as a parameter." | 395 $ write sys$output " Please enter username and password as a parameter." |
392 $ write sys$output " Example: @SETVIM.COM username passwd" | 396 $ write sys$output " Example: @SETVIM.COM username passwd" |
393 $ end: | 397 $ end: |
394 | 398 |
395 Note: Never use it in clustered environment (you do not need it), and load could | 399 Note: Never use it in a clustered environment (you do not need it), loading |
396 be very-very slow, but even faster then a local Emacs. :-) | 400 could be very-very slow, but even faster then a local Emacs. :-) |
397 | 401 |
398 (Zoltan Arpadffy, Vim 5.6) | 402 (Zoltan Arpadffy, Vim 5.6) |
399 | 403 |
400 | 404 |
401 8.6 Terminal problems | 405 8.6 Terminal problems |
402 | 406 |
403 If your terminal name is not known to Vim and it is trying to find the default | 407 If your terminal name is not known to Vim and it is trying to find the default |
404 one you will get the following message during start-up: | 408 one you will get the following message during start-up: |
405 --- | 409 --- |
406 Terminal entry not found in termcap | 410 Terminal entry not found in termcap |
407 'unknown-terminal' not known. Available built-in terminals are: | 411 'unknown-terminal' not known. Available built-in terminals are: |
408 builtin_gui | 412 builtin_gui |
409 builtin_riscos | 413 builtin_riscos |
410 builtin_amiga | 414 builtin_amiga |
411 builtin_beos-ansi | 415 builtin_beos-ansi |
412 builtin_ansi | 416 builtin_ansi |
420 builtin_dumb | 424 builtin_dumb |
421 defaulting to 'vt320' | 425 defaulting to 'vt320' |
422 --- | 426 --- |
423 The solution is to define default terminal name: > | 427 The solution is to define default terminal name: > |
424 | 428 |
425 $ ! unknown terminal name. let us use vt320 or ansi instead. | 429 $ ! unknown terminal name. Let us use vt320 or ansi instead. |
426 $ ! Note: it's case sensitive | 430 $ ! Note: it's case sensitive |
427 $ define term "vt320" | 431 $ define term "vt320" |
428 | 432 |
429 Terminals from VT100 to VT320 (as V300, VT220, VT200 ) do not need any extra | 433 Terminals from VT100 to VT320 (as V300, VT220, VT200 ) do not need any extra |
430 keyboard mappings. They should work perfect as they are, including arrows, | 434 keyboard mappings. They should work perfect as they are, including arrows, |
431 Ins, Del buttons etc. Except Backspace in GUI mode. To solve it, add to | 435 Ins, Del buttons etc., except Backspace in GUI mode. To solve it, add to |
432 .gvimrc: > | 436 .gvimrc: > |
433 | 437 |
434 inoremap <Del> <BS> | 438 inoremap <Del> <BS> |
435 | 439 |
436 Vim will also recognize that they are fast terminals. | 440 Vim will also recognize that they are fast terminals. |
455 | 459 |
456 RUN <path>filename | 460 RUN <path>filename |
457 MCR <path>filename <parameters> | 461 MCR <path>filename <parameters> |
458 | 462 |
459 OpenVMS users always have to be aware that the Vim command :! "just" drop them | 463 OpenVMS users always have to be aware that the Vim command :! "just" drop them |
460 to DCL prompt. This feature is possible to use without any problem with all | 464 to DCL prompt. This feature is possible to use without any problem with all |
461 DCL commands, but if we want to execute some program as XXD, CTAGS, JTAGS etc. | 465 DCL commands, but if we want to execute some program as XXD, CTAGS, JTAGS etc. |
462 we're running into trouble if we following the Vim documentation (see: help | 466 we're running into trouble if we follow the Vim documentation (see: help |
463 xxd). | 467 xxd). |
464 | 468 |
465 Solution: Execute with the MC command and add the full path to the executable. | 469 Solution: Execute with the MC command and add the full path to the executable. |
466 Example: Instead of :%!xxd command use: > | 470 Example: Instead of :%!xxd command use: > |
467 | 471 |
468 :%!mc vim:xxd | 472 :%!mc vim:xxd |
469 | 473 |
470 ... or in general: > | 474 ... or in general: > |
471 :!mc <path>filename <parameters> | 475 :!mc <path>filename <parameters> |
472 | 476 |
473 Note: You can use XXD, and CTAGS from GUI menu. | 477 Note: You can use XXD and CTAGS from GUI menu. |
474 | 478 |
475 To customize ctags it is possible to define logical $CTAGS with standard | 479 To customize ctags it is possible to define the logical $CTAGS with standard |
476 parameters as: > | 480 parameters as: > |
477 | 481 |
478 define/nolog CTAGS "--totals -o sys$login:tags" | 482 define/nolog CTAGS "--totals -o sys$login:tags" |
479 | 483 |
480 For additional information, please read :help tagsearch and CTAGS | 484 For additional information, please read :help tagsearch and CTAGS |
486 8.8 Sourcing vimrc and gvimrc | 490 8.8 Sourcing vimrc and gvimrc |
487 | 491 |
488 If you want to use your .vimrc and .gvimrc from other platforms (e.g. Windows) | 492 If you want to use your .vimrc and .gvimrc from other platforms (e.g. Windows) |
489 you can get in trouble if you ftp that file(s): VMS has different end-of-line | 493 you can get in trouble if you ftp that file(s): VMS has different end-of-line |
490 indication. | 494 indication. |
491 The symptom is that ViM is not sourcing your .vimrc/.gvimrc, even if you say: | 495 The symptom is that Vim is not sourcing your .vimrc/.gvimrc, even if you say: |
492 > | 496 > |
493 :so sys$login:.vimrc | 497 :so sys$login:.vimrc |
494 | 498 |
495 One trick is to compress (e.g. zip) the files on the other platform and | 499 One trick is to compress (e.g. zip) the files on the other platform and |
496 uncompress it on VMS; if you have the same symptom, try to create the files | 500 uncompress it on VMS; if you have the same symptom, try to create the files |
533 | 537 |
534 8.11 diff and other GNU programs | 538 8.11 diff and other GNU programs |
535 | 539 |
536 From 6.0 diff functionality has been implemented, but OpenVMS does not use | 540 From 6.0 diff functionality has been implemented, but OpenVMS does not use |
537 GNU/Unix like diff therefore built in diff does not work. | 541 GNU/Unix like diff therefore built in diff does not work. |
538 There is a simple solution to solve this anomaly. Install an Unix like diff | 542 There is a simple solution to solve this anomaly. Install a Unix like diff |
539 and Vim will work perfect in diff mode too. You just have to redefine your | 543 and Vim will work perfect in diff mode too. You just have to redefine your |
540 diff program as: > | 544 diff program as: > |
541 | 545 |
542 define /nolog diff <GNU_PATH>diff.exe | 546 define /nolog diff <GNU_PATH>diff.exe |
543 | 547 |
544 Another, more sophisticated solution is described below (8.12 diff-mode) | 548 Another, more sophisticated solution is described below (8.12 diff-mode) |
549 | 553 |
550 | 554 |
551 8.12 diff-mode | 555 8.12 diff-mode |
552 | 556 |
553 Vim 6.0 and higher supports vim diff-mode (See |new-diff-mode|, |diff-mode| | 557 Vim 6.0 and higher supports vim diff-mode (See |new-diff-mode|, |diff-mode| |
554 and |08.7|). This uses the external program 'diff' and expects a Unix-like | 558 and |08.7|). This uses the external program 'diff' and expects a Unix-like |
555 output format from diff. The standard VMS diff has a different output | 559 output format from diff. The standard VMS diff has a different output |
556 format. To use vim on VMS in diff-mode, you need to: | 560 format. To use vim on VMS in diff-mode, you need to: |
557 1 Install a Unix-like diff program, e.g. GNU diff | 561 1 Install a Unix-like diff program, e.g. GNU diff |
558 2 Tell vim to use the Unix-like diff for diff-mode. | 562 2 Tell vim to use the Unix-like diff for diff-mode. |
559 | 563 |
560 You can download GNU diff from the VIM-VMS website, it is one of the GNU | 564 You can download GNU diff from the VIM-VMS website, it is one of the GNU |
561 tools in http://www.polarhome.com/vim/files/gnu_tools.zip. I suggest to | 565 tools in http://www.polarhome.com/vim/files/gnu_tools.zip. I suggest to |
562 unpack it in a separate directory "GNU" and create a logical GNU: that | 566 unpack it in a separate directory "GNU" and create a logical GNU: that |
563 points to that directory. e.g: > | 567 points to that directory, e.g: > |
564 | 568 |
565 DEFINE GNU <DISK>:[<DIRECTORY>.BIN.GNU] | 569 DEFINE GNU <DISK>:[<DIRECTORY>.BIN.GNU] |
566 | 570 |
567 You may also want to define a symbol GDIFF, to use the GNU diff from the DCL | 571 You may also want to define a symbol GDIFF, to use the GNU diff from the DCL |
568 prompt: > | 572 prompt: > |
569 | 573 |
570 GDIFF :== $GNU:DIFF.EXE | 574 GDIFF :== $GNU:DIFF.EXE |
571 | 575 |
572 Now you need to tell vim to use the new diff program. Take the example | 576 Now you need to tell vim to use the new diff program. Take the example |
573 settings from |diff-diffexpr| and change the call to the external diff | 577 settings from |diff-diffexpr| and change the call to the external diff |
574 program to the new diff on VMS. Add this to your .vimrc file: > | 578 program to the new diff on VMS. Add this to your .vimrc file: > |
575 | 579 |
576 " Set up vimdiff options | 580 " Set up vimdiff options |
577 if v:version >= 600 | 581 if v:version >= 600 |
578 " Use GNU diff on VMS | 582 " Use GNU diff on VMS |
579 set diffexpr=MyDiff() | 583 set diffexpr=MyDiff() |
610 ( Coen Engelbarts, Vim 6.1) | 614 ( Coen Engelbarts, Vim 6.1) |
611 | 615 |
612 | 616 |
613 8.13 Allow '$' in C keywords | 617 8.13 Allow '$' in C keywords |
614 | 618 |
615 DEC C uses many identifiers with '$' in them. This is not allowed in ANSI C, | 619 DEC C uses many identifiers with '$' in them. This is not allowed in ANSI C, |
616 and vim recognises the '$' as the end of the identifier. You can change this | 620 and vim recognises the '$' as the end of the identifier. You can change this |
617 with the |iskeyword|command. | 621 with the |iskeyword|command. |
618 Add this command to your .vimrc file: > | 622 Add this command to your .vimrc file: > |
619 | 623 |
620 autocmd FileType c,cpp,cs set iskeyword+=$ | 624 autocmd FileType c,cpp,cs set iskeyword+=$ |
621 | 625 |
623 CS.VIM) and add this command: > | 627 CS.VIM) and add this command: > |
624 | 628 |
625 set iskeyword+=$ | 629 set iskeyword+=$ |
626 | 630 |
627 Now word-based commands, e.g. the '*'-search-command and the CTRL-] | 631 Now word-based commands, e.g. the '*'-search-command and the CTRL-] |
628 tag-lookup, work on the whole identifier. (Ctags on VMS also supports '$' in | 632 tag-lookup, work on the whole identifier. (Ctags on VMS also supports '$' in |
629 C keywords since ctags version 5.1.) | 633 C keywords since ctags version 5.1.) |
630 | 634 |
631 ( Coen Engelbarts, Vim 6.1) | 635 ( Coen Engelbarts, Vim 6.1) |
632 | 636 |
633 8.14 VIMTUTOR for beginners | 637 8.14 VIMTUTOR for beginners |
634 | 638 |
635 It exits VIMTUTOR.COM DCL script that can help Vim beginners to learn/make | 639 It exits VIMTUTOR.COM DCL script that can help Vim beginners to learn/make |
636 first steps with Vim on OpenVMS. Depending of binary distribution you may start | 640 first steps with Vim on OpenVMS. Depending of binary distribution you may |
637 it with: > | 641 start it with: > |
638 | 642 |
639 @vim:vimtutor | 643 @vim:vimtutor |
640 | 644 |
641 (Thomas.R.Wyant III, Vim 6.1) | 645 (Thomas.R.Wyant III, Vim 6.1) |
642 | 646 |