forbes@aries.uiuc.edu (Jeff Forbes) (11/10/89)
Does anyone have the latest version of MicroEmacs running on a MIPS box? I have had some trouble getting it to work properly. I have set it up for a VT100 type keypad with ANSI terminal output, but the function and cursor keys are not bound. I have an emacs.rc that works fine with version 3.8 on a VAX. Has the startup format changed? Jeff
jerry@altos86.Altos.COM (Jerry Gardner) (11/11/89)
In article <1989Nov10.051358.25964@ux1.cso.uiuc.edu> forbes@aries.scs.uiuc.edu (Jeff Forbes) writes: > >Does anyone have the latest version of MicroEmacs running on a MIPS >box? I have had some trouble getting it to work properly. I have set >it up for a VT100 type keypad with ANSI terminal output, but the >function and cursor keys are not bound. I have an emacs.rc that works >fine with version 3.8 on a VAX. Has the startup format changed? It depends on the OS type you have defined in estruct.h. The code that implements function and cursor keys is in the file tcap.c. If you have set the OS type to generic UNIX (USG I think) in estruct.h, function and cursor keys will not work. They do work in XENIX, BSD, and SunOS. The reason they don't work for generic UNIX (this includes SysV), according to the comments in tcap.c, is that the author couldn't find a way to delay for 30msec after an ESC character came in before deciding whether it was part of an escape sequence generated by a function key or by a fast typist doing something like ESC G. If you know of a system call on your OS to delay for approx. 30msec, hack the code in tcap.c and add the delay. Use the code #ifdef'd for XENIX or BSD as an example. -- Jerry Gardner, NJ6A Altos Computer Systems UUCP: {sun|pyramid|sco|amdahl|uunet}!altos86!jerry 2641 Orchard Parkway Internet: jerry@altos.com San Jose, CA 95134 I don't speak for Altos, they don't speak for me. 946-6700
rbp@investor.pgh.pa.us (Bob Peirce #305) (11/14/89)
In article <3749@altos86.Altos.COM> jerry@altos86.UUCP (Jerry Gardner) writes: > >It depends on the OS type you have defined in estruct.h. The code that >implements function and cursor keys is in the file tcap.c. If you have >set the OS type to generic UNIX (USG I think) in estruct.h, function and >cursor keys will not work. They do work in XENIX, BSD, and SunOS. The >reason they don't work for generic UNIX (this includes SysV), according >to the comments in tcap.c, is that the author couldn't find a way to >delay for 30msec after an ESC character came in before deciding whether >it was part of an escape sequence generated by a function key or by a >fast typist doing something like ESC G. > >If you know of a system call on your OS to delay for approx. 30msec, hack >the code in tcap.c and add the delay. Use the code #ifdef'd for XENIX or >BSD as an example. > This always confuses me, but there is a way to time-out your input on SysV. Guy Harris, I think, wrote a piece on this a while back. It is not [well] documented in the manuals but you use the VEOF and VEOL field of c_cc in the termio structure. I wish I could tell you more. I think vi uses this feature. Some other programs must as well. If you have access to source it is probably easier to look than to figure it out from any documentaion you can find! -- Bob Peirce, Pittsburgh, PA 412-471-5320 ...!uunet!pitt!investor!rbp rbp@investor.pgh.pa.us