[Vim-vms] Vim on VMS map bug?

Zoltan Arpadffy zoli at polarhome.com
Thu May 1 08:16:38 CEST 2008


Hello Dan,

 

Could you please tell me what Vim version and what mode do you use.

 


 because we have had enormous problems with character reading from the
keyboard especially with esc sequences in console mode.

Today (in the last two years) we use a trick with two sequential reading
with different triggers that does the job without causing IO resource
troubles as earlier.

(see os_vms.c in the Vin source code)

I can imagine that this trick can fail with some special combination of the
qio read terminators. But this is valid just for console mode.

 

As Motif and GTK executables use standard VMS X11 input I guess that
switching to GUI would solve your problem.

 

To be honest, I am not very keen to touch that part of the code, because
this sequential read trick is some about the tenth in a row of tried and
failed algorithms.

But if you have a better idea you are very much welcome.

 

    /* set up the itemlist for the first read */

    vul_item(&itmlst[0], 0, TRM$_MODIFIERS,

         (char *)( TRM$M_TM_NOECHO  | TRM$M_TM_NOEDIT    |

                   TRM$M_TM_NOFILTR | TRM$M_TM_TRMNOECHO |

                   TRM$M_TM_NORECALL) , 0);

    vul_item(&itmlst[1], sizeof(trm_mask), TRM$_TERM, (char *)&trm_mask, 0);

 

    /* wait forever for a char */

    function = (IO$_READLBLK | IO$M_EXTEND);

    status = sys$qiow(0, iochan, function, &iosb, 0, 0,

                         inbuf, nbytes-1, 0, 0, &itmlst, sizeof(itmlst));

    len = strlen(inbuf); /* how many chars we got? */

 

    /* read immediately the rest in the IO queue   */

    function = (IO$_READLBLK | IO$M_TIMED | IO$M_ESCAPE | IO$M_NOECHO |
IO$M_NOFILTR);

    status = sys$qiow(0, iochan, function, &iosb, 0, 0,

                         inbuf+len, nbytes-1-len, 0, 0, 0, 0);

 

Regards,

Z              

 

 

  _____  

Från: Dan [mailto:dan.macdaddy at gmail.com] 
Skickat: den 1 maj 2008 02:46
Till: vim-vms-bugs at polarhome.com
Ämne: Vim on VMS map bug?

 

Hi 

Sorry to bother you but hopefully you may be able to help me.

It might not be so much a bug, but i am trying to map ;; to <Esc> to break
from insert to command mode.

It works on windows, and linux but for the life of me i can't get it working
on the VMS port.

I have tried:

imap ;; <Esc>      
imap ;; ^[      " using ctrl-v  then hitting ESC

amongst others.

Interestingly, i can map <Esc> to the v key (but this is not what i want)

map v ^[


Thanks again !!!!


(p.s) i'm accessing the vms machine using PowerTerm.

Here is my version info.

OpenVMS 8.3 Itanium 64:

VIM - Vi IMproved 7.1 (2007 May 12, compiled Jun 14 2007 14:27:07)
OpenVMS version - IA64
Included patches: 1-2
Compiled by ZAY at TITAN2::TITAN2.SCIGAMES.AT
Big version without GUI.  Features included (+) or not (-):
+arabic +autocmd -balloon_eval -browse ++builtin_terms +byte_offset +cindent
-clientserver -clipboard +cmdline_compl +cmdline_hist
+cmdline_info +comments +cryptv -cscope -cursorshape +dialog_con +diff
+digraphs -dnd -ebcdic +emacs_tags +eval +ex_extra
+extra_search +farsi +file_in_path +find_in_path +folding -footer -gettext
-hangul_input -iconv +insert_expand +jumplist +keymap
+langmap -libcall +linebreak +lispindent +listcmds +localmap +menu
+mksession +modify_fname +mouse -mouseshape +mouse_dec
-mouse_gpm -mouse_jsbterm +mouse_netterm +mouse_xterm +multi_byte
+multi_lang -mzscheme -netbeans_intg -osfiletype +path_extra
-perl +postscript +printer -profile -python +quickfix +reltime +rightleft
-ruby +scrollbind +signs +smartindent -sniff +statusline
-sun_workshop +syntax +tag_binary +tag_old_static -tag_any_white -tcl
+tgetent +termresponse +textobjects +title -toolbar
+user_commands +vertsplit +virtualedit +visual +visualextra +viminfo
+vreplace +wildignore +wildmenu +windows -writebackup -X11
-xfontset -xim -xsmp -xterm_clipboard -xterm_save
   system vimrc file: "$VIM/vimrc"
     user vimrc file: "sys$login:.vimrc"
 2nd user vimrc file: "sys$login:_vimrc"
      user exrc file: "sys$login:.exrc"
  2nd user exrc file: "sys$login:_exrc"
Compilation: cc/def=(FEAT_BIG,HAVE_CONFIG_H  )  /opt/prefix=all
/include=([.proto])
Compiler: HP C S7.1-013 on OpenVMS IA64 V8.2-1
Linking: link /exe=vim.exe *.OBJ

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.polarhome.com/pipermail/vim-vms/attachments/20080501/c1c0837f/attachment.html 


More information about the Vim-vms mailing list