setup for using CRISP with MS-Kermit

djm at wam.UMD.EDU djm at wam.UMD.EDU
Sun Sep 10 13:26:59 AEST 1989


Below is a shell archive containing files that can be used to allow the
crisp text editor to be used with MS-Kermit in vt102 mode.  To use it,
install mskermit.m in your crisp macros/tty directory and source
crisp.tak with MS-Kermit's "take" command.

I took the escape sequences almost verbatim from the tty/isc.m file,
then rebound MS-Kermit's keys to send them.  I didn't use MS-Kermit's
default vt102 bindings because, crisp being a clone of a DOS editor, it's
best to use the PC keyboard as such rather than awkwardly emulating a
DEC keyboard.

I welcome any improvements to these files; in particular, I don't have
color or an enhanced keyboard, so support for those is untested.
To use the keypad for crisp, you should probably put Num Lck on so you
don't have to use shift to go to the beginning of the line, etc.  Then
you access the MS-Kermit functions (scrolling the display memory) by
using shift.  There is no way to get the keypad to transmit plain old
numbers in this configuration.

#! /bin/sh
# This is a shell archive.  Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file".  To overwrite existing
# files, type "sh file -c".  You can also feed this as standard input via
# unshar, or by typing "sh <file", e.g..  If this archive is complete, you
# will see the following message at the end:
#		"End of shell archive."
# Contents:  mskermit.m crisp.tak
# Wrapped by dave at edfdc on Sat Sep  9 23:17:55 1989
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f 'mskermit.m' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'mskermit.m'\"
else
echo shar: Extracting \"'mskermit.m'\" \(3400 characters\)
sed "s/^X//" >'mskermit.m' <<'END_OF_FILE'
X/* MS-Kermit terminal setup for CRISP.
X   Requires the kermit keys to be rebound.
X   by David MacKenzie */
X
X#include "tty.h"
X
X(macro _init
X    (
X	/* Set characters used for extended graphics support when
X	   drawing windows. */
X	(set_term_characters
X	    213		; Top left of window.
X	    184		; Top right of window.
X	    212		; Bottom left of window.
X	    190		; Bottom right of window.
X	    179		; Vertical bar for window sides.
X	    205		; Top and bottom horizontal bar for window.
X	    NULL	; Top join.
X	    NULL	; Bottom join.
X	    NULL	; Window 4-way intersection.
X	    NULL	; Left hand join.
X	    NULL	; Right hand join.
X	    )
X
X	/* Define escape sequences used for special optimisations on output. */
X	(set_term_features
X	    NULL	; Sequence to clear 'n' spaces.
X	    "%c"	; Sequence to print characters with top bit set.
X	    NULL	; Insert-mode cursor.
X	    NULL	; Overwrite-mode cursor.
X	    NULL	; Insert-mode cursor (on virtual space).
X	    NULL	; Overwrite-mode cursor (on virtual space).
X	    NULL	; Print ESCAPE character graphically.
X	    NULL	; Escape sequence to repeat last character.
X	    FALSE	; TRUE if ESC [0m resets color.
X	    TRUE	; TRUE if terminal supports color.
X	    "\x1B[%dC"	; Move cursor multiple columns (termcap lacks).
X	    )
X
X	/* Define keyboard layout for non-ASCII characters. */
X	(set_term_keyboard
X	    F1-F12
X	    (quote_list "\x1BOP" "\x1BOQ" "\x1BOR" "\x1BOS" "\x1BOT"
X			"\x1BOU" "\x1BOV" "\x1BOW" "\x1BOX" "\x1BOY"
X			"\x1BOZ" "\x1BO[")
X
X	    SHIFT-F1-F12
X	    (quote_list "\x1BOp" "\x1BOq" "\x1BOr" "\x1BOs" "\x1BOt"
X			"\x1BOu" "\x1BOv" "\x1BOw" "\x1BOx" "\x1BOy"
X			"\x1BOz" "\x1BO{")
X	    CTRL-F1-F12
X	    (quote_list "\x1BO\x10" "\x1BO\x11" "\x1BO\x12" "\x1BO\x13"
X			"\x1BO\x14"  "\x1BO\x15" "\x1BO\x16" "\x1BO\x17"
X			"\x1BO\x18" "\x1BO\x19" "\x1BO\x1a" "\x1BO\x1B")
X	    ALT-A-Z
X	    (quote_list	"\x1BNa" "\x1BNb" "\x1BNc" "\x1BNd" "\x1BNe"
X			"\x1BNf" "\x1BNg" "\x1BNh" "\x1BNi" "\x1BNj"
X			"\x1BNk" "\x1BNl" "\x1BNm" "\x1BNn" "\x1BNo"
X			"\x1BNp" "\x1BNq" "\x1BNr" "\x1BNs" "\x1BNt"
X			"\x1BNu" "\x1BNv" "\x1BNw" "\x1BNx" "\x1BNy" "\x1BNz")
X	    KEYPAD-0-9
X	    (quote_list "\x1B[@" "\x1B[Y" "\x1B[B" "\x1B[U" "\x1B[D"
X			"\x1B[G" "\x1B[C" "\x1B[H" "\x1B[A" "\x1B[V")
X	    CTRL-KEYPAD-0-9 ; Not sent by MS-Kermit.
X	    (quote_list "\x1B?0" "\x1B?1" "\x1B?2" "\x1B?3" "\x1B?4"
X			"\x1B?5" "\x1B?6" "\x1B?7" "\x1B?8" "\x1B?9")
X	    ALT-0-9
X	    (quote_list "\x1BN0" "\x1BN1" "\x1BN2" "\x1BN3" "\x1BN4"
X			"\x1BN5" "\x1BN6" "\x1BN7" "\x1BN8" "\x1BN9")
X	    CUT		"\x1B[S"	; keypad -
X	    COPY	"\x1B[T"	; keypad +
X	    BACK-TAB	"\x1B[Z"	; shift-tab
X	)
X
X	(assign_to_key "#127" "backspace")
X    )
X)
X
X/* Macro called if `-mono' is part of the suffix list of BTERM.
X   This is called after _init. */
X(macro mono
X    (
X	/* Define escape sequences used for special optimisations on output. */
X	(set_term_features
X	    NULL	; Sequence to clear 'n' spaces.
X	    "%c"	; Sequence to print characters with top bit set.
X	    NULL	; Insert-mode cursor.
X	    NULL	; Overwrite-mode cursor.
X	    NULL	; Insert-mode cursor (on virtual space).
X	    NULL	; Overwrite-mode cursor (on virtual space).
X	    NULL	; Print ESCAPE character graphically.
X	    NULL	; Escape sequence to repeat last character.
X	    FALSE	; TRUE if ESC [0m resets color.
X	    FALSE	; TRUE if terminal supports color.
X	    "\x1B[%dC"	; Move cursor multiple columns (termcap lacks).
X	    )
X    )
X)
END_OF_FILE
if test 3400 -ne `wc -c <'mskermit.m'`; then
    echo shar: \"'mskermit.m'\" unpacked with wrong size!
fi
# end of 'mskermit.m'
fi
if test -f 'crisp.tak' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'crisp.tak'\"
else
echo shar: Extracting \"'crisp.tak'\" \(2451 characters\)
sed "s/^X//" >'crisp.tak' <<'END_OF_FILE'
X; crisp.tak - remap the MS-Kermit keyboard for crisp with BTERM=mskermit
X; Load with the command:
X; Kermit-MS>take crisp.tak
X; David MacKenzie
X; Latest revision: 09/09/89
X
Xset flow-control none
Xset display 8-bit      ; Allow full 8 bit character set to be used.
Xset term vt102         ; Emulate a DEC VT-102 terminal
Xset term wrap on       ; Have Kermit wrap lines at column 80
Xset mode-line off      ; Don't show mode line at bottom of screen.
X
X; F1-F12
Xset key \315 \27OP
Xset key \316 \27OQ
Xset key \317 \27OR
Xset key \318 \27OS
Xset key \319 \27OT
Xset key \320 \27OU
Xset key \321 \27OV
Xset key \322 \27OW
Xset key \323 \27OX
Xset key \324 \27OY
X;set key   ? \27OZ
X;set key   ? \27O[
X
X; Shift-F1-F12
Xset key \852 \27Op
Xset key \853 \27Oq
Xset key \854 \27Or
Xset key \855 \27Os
Xset key \856 \27Ot
Xset key \857 \27Ou
Xset key \858 \27Ov
Xset key \859 \27Ow
Xset key \860 \27Ox
Xset key \861 \27Oy
X;set key   ? \27Oz
X;set key   ? \27O{
X
X; Ctrl-F1-F12
Xset key \1374 \27O\16
Xset key \1375 \27O\17
Xset key \1376 \27O\18
Xset key \1377 \27O\19
Xset key \1378 \27O\20
Xset key \1379 \27O\21
Xset key \1380 \27O\22
Xset key \1381 \27O\23
Xset key \1382 \27O\24
Xset key \1383 \27O\25
X;set key    ? \27O\26
X;set key    ? \27O\27
X
X; Alt-A-Z
Xset key \2320 \27Nq
Xset key \2321 \27Nw
Xset key \2322 \27Ne
Xset key \2323 \27Nr
Xset key \2324 \27Nt
Xset key \2325 \27Ny
Xset key \2326 \27Nu
Xset key \2327 \27Ni
Xset key \2328 \27No
Xset key \2329 \27Np
Xset key \2334 \27Na
Xset key \2335 \27Ns
Xset key \2336 \27Nd
Xset key \2337 \27Nf
Xset key \2338 \27Ng
Xset key \2339 \27Nh
Xset key \2340 \27Nj
Xset key \2341 \27Nk
Xset key \2342 \27Nl
Xset key \2348 \27Nz
Xset key \2349 \27Nx
Xset key \2350 \27Nc
Xset key \2351 \27Nv
Xset key \2352 \27Nb
Xset key \2353 \27Nn
Xset key \2354 \27Nm
X
X; Alt-0-9
Xset key \2424 \27N1
Xset key \2425 \27N2
Xset key \2426 \27N3
Xset key \2427 \27N4
Xset key \2428 \27N5
Xset key \2429 \27N6
Xset key \2430 \27N7
Xset key \2431 \27N8
Xset key \2432 \27N9
Xset key \2433 \27N0
X
X; keypad 0-9 (shifted, actually)
Xset key \850 \27[@
Xset key \847 \27[Y
Xset key \848 \27[B
Xset key \849 \27[U
Xset key \843 \27[D
Xset key \844 \27[G
Xset key \845 \27[C
Xset key \839 \27[H
Xset key \840 \27[A
Xset key \841 \27[V
X
X; Ctrl-keypad 0-9
X;set key \1397 \27?1
X;set key \1398 \27?3
X;set key \1395 \27?4
X;set key \1396 \27?6
X;set key \1399 \27?7
X;set key \1412 \27?9
X
Xset key \330 \27[S	; keypad -
Xset key \842 \Kmodeline	; shift-keypad -
Xset key \334 \27[T	; keypad +
Xset key \783 \27[Z	; Shift-Tab
X
END_OF_FILE
if test 2451 -ne `wc -c <'crisp.tak'`; then
    echo shar: \"'crisp.tak'\" unpacked with wrong size!
fi
# end of 'crisp.tak'
fi
echo shar: End of shell archive.
exit 0



More information about the Alt.sources mailing list