[comp.emacs] Using MS kermit 2.31 with emacs

spolsky@Yale.EDU (Joel Spolsky) (09/14/88)

Hello all!

If you are using kermit (version 2.31 only) with emacs on a mainframe,
the following file may help you. It assigns all the Alt-keys so that
the Alt key may be used as a "Meta" shift, e.g. Alt-x produces M-x,
etc.  Note that it will distinguish correctly between upper and lower
case and accepts all printables. (If anybody has the patience to do
the Meta-Ctrl combinations, please post them!) This actually sends
"escapes" so you don't need 8 bits.

This file also sets up the cursor keys to behave as expected.

On extended keyboards (the ones with a separate cursor pad, like
PS/2s) you also get:

Page Up - M-v    Cursor keys: the usual ^N ^B ^P ^F
Page Down - ^V   Ctrl-left cursor -s back one word (M-b)
Home - ^A        Ctrl-right cursor - forward one word (M-f)
End - ^E         
Insert - ^Y      Delete - ^W
I moved the kermit functions to scroll through memory forwards and
backwards to ALT-PgUp, ALT-PgDn, ALT-Home and ALT-End.

To run it, save everything after the --cut here-- line in a file, and
give kermit the command "take <filename>". This can be invoked from a
batch file too.

Please let me know if you find any problems with this.

Joel Spolsky             bitnet: spolsky@yalecs     uucp: ...!yale!spolsky
Yale University          arpa:   spolsky@yale.edu   voicenet: 203-436-1483
"You can't expect to wield supreme executive power just 'cause 
some watery tart threw a sword at you!!" - Monty Python

------------cut here!---------

; Emacs keyboard layout for Kermit 2.31
; by Joel Spolsky. Save this in a file, then
; initialize it by issuing the kermit command
; take filename
; It will set up the keyboard to allow ALT to be used
; as a meta-key, and will allow cursor keys to be used
; with emacs.

; First, define all the ALT keys to send ESC+key
; to simulate "meta"

set key \2320 \27q  ;; letters: unshifted
set key \2321 \27w
set key \2322 \27e
set key \2323 \27r
set key \2324 \27t
set key \2325 \27y
set key \2326 \27u
set key \2327 \27i
set key \2328 \27o
set key \2329 \27p
set key \2334 \27a
set key \2335 \27s
set key \2336 \27d
set key \2337 \27f
set key \2338 \27g
set key \2339 \27h
set key \2340 \27j
set key \2341 \27k
set key \2342 \27l
set key \2348 \27z
set key \2349 \27x
set key \2350 \27c
set key \2351 \27v
set key \2352 \27b
set key \2353 \27n
set key \2354 \27m
set key \2832 \27Q ;; letters: shifted
set key \2833 \27W
set key \2834 \27E
set key \2835 \27R
set key \2836 \27T
set key \2837 \27Y
set key \2838 \27U
set key \2839 \27I
set key \2840 \27O
set key \2841 \27P
set key \2846 \27A
set key \2847 \27S
set key \2848 \27D
set key \2849 \27F
set key \2850 \27G
set key \2851 \27H
set key \2852 \27J
set key \2853 \27K
set key \2854 \27L
set key \2860 \27Z
set key \2861 \27X
set key \2862 \27C
set key \2863 \27V
set key \2864 \27B
set key \2865 \27N
set key \2866 \27M
set key \2857 \27\126    ; ALT + ~   ;; special symbols begin here
set key \2345 \27\96     ; ALT + `
set key \2936 \27\33     ; ALT + !
set key \2937 \27\64     ; ALT + @
set key \2938 \27\35     ; ALT + #
set key \2939 \27\36     ; ALT + $
set key \2940 \27\37     ; ALT + %
set key \2941 \27\94     ; ALT + ^
set key \2942 \27\38     ; ALT + &
set key \2943 \27\42     ; ALT + *
set key \2944 \27\40     ; ALT + (
set key \2945 \27\41     ; ALT + )
set key \2946 \27\95     ; ALT + _
set key \2947 \27\43     ; ALT + +
set key \2842 \27\123    ; ALT + {
set key \2843 \27\125    ; ALT + }
set key \2330 \27\91     ; ALT + [
set key \2331 \27\93     ; ALT + ]
set key \2859 \27\124    ; ALT + |
set key \2347 \27\92     ; ALT + \
set key \2867 \27<       ; ALT + <
set key \2868 \27>       ; ALT + >
set key \2343 \27\59     ; ALT + ;
set key \2855 \27\58     ; ALT + :
set key \2344 \27\39     ; ALT + '
set key \2856 \27\34     ; ALT + "
set key \2355 \27\44     ; ALT + ,
set key \2356 \27\46     ; ALT + .
set key \2357 \27\47     ; ALT + /
set key \2869 \27\63     ; ALT + ?
set key \2424 \27\49  ;; numbers
set key \2425 \27\50
set key \2426 \27\51
set key \2427 \27\52
set key \2428 \27\53
set key \2429 \27\54
set key \2430 \27\55
set key \2431 \27\56
set key \2432 \27\57
set key \2433 \27\48

;; These 6 special keys for extended (PS/2) keyboards:
set key \4434 \25      ;; Insert is like ^Y - yank from kill ring
set key \4435 \23      ;; Delete is like ^W - kill to ring
set key \4423 \1       ;; Home is ^A
set key \4431 \5       ;; End is ^E
set key \4425 \27V     ;; Page up is Esc-V
set key \4433 \22      ;; Page dn is ^v

set key \328 \16       ;; up cursor is ^P
set key \331 \2        ;; left cursor is ^B
set key \333 \6        ;; right cursor is ^F
set key \336 \14       ;; down cursor is ^N
set key \4427 \2       ;; left cursor on extended kbd
set key \4432 \14      ;; down cursor on extended kbd
set key \4424 \16      ;; up cursor on extended kbd
set key \4429 \6       ;; right cursor on extended kbd

set key \5491 \27b     ;; ctrl-left cursor is M-b
set key \5492 \27f     ;; ctrl-right cursor is M-f

;; move kermit's screen scroll (playback) features to Alt- Home,End,PgUp,PgDn
;; (this is an issue for extended keyboards only)

set key \2455 \khomscn
set key \2463 \kendscn
set key \2457 \kupscn
set key \2465 \kdnscn