Path: utzoo!utgpu!water!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!husc6!cmcl2!acf8!sperling
From: sperling@acf8.UUCP (George Sperling)
Newsgroups: comp.emacs
Subject: Re: jove & vt100
Message-ID: <1040006@acf8.UUCP>
Date: 12 May 88 15:43:00 GMT
References: <299@wmt.UUCP>
Organization: New York University
Lines: 40

Ping asks
>If I use several different terminals, how do I tell jove (supposedly
>through the .joverc file) to interpret the cursor and function keys
>correctly? Thanks in advance!

Jove has the (undocumented???) feature of conditional execution of
commands in the .joverc file. The correct syntax is:

if unix-command
jove-commands
else
jove-commands
endif

The else is optional. You can use this to check your terminal type in
the environment. If checkenv is a program that returns 1 whenever
getenv(argv[2]) matches argv[3], your .joverc should read as follows:

if checkenv TERM vt100
set meta-key off
set allow-^S-and-^Q off
bind-to-key ansi-codes ESC O
else
bind-to-key ansi-codes ESC [
endif

The function ansi-codes in Jove knows about Escape sequences sent by
VTxxx terminals and Sun windows. Most terminals send the same escape
sequences for the cursor keys. If you have anything nonstandard, you
have to code it into the function AnsiCodes() in misc.c.


Karl Gegenfurtner

arpa:	karl@hipl.psych.nyu.edu
uucp:	...{seismo|ihnp4|allegra}!cmcl2!xp!hipl!karl
usps:	Department of Psychology, NYU
	6 Washington Place, 8th fl.
	New York, NY 10003
at&t: