kcantrel@digi.lonestar.org (Keith Cantrell) (09/12/90)
I am posting this for someone who does not have net access: *** Begin Forwarded Message ***** I am trying to run emacs on a Silicon Graphics personal IRIS, but the keybindings are screwed (i.e. all of the cursor keys are defined incorrectly). *** End Forwarded Message ***** I think what he needs is a keymap definition for a Silicon Graphics machine. Does anybody have one? Or does anybody know how to get emacs to work on a Silicon Graphics machine? Thanks Keith Cantrell ----------------------------------------------------------------------- Keith Cantrell Phones: hm: 214-492-1088 Apollo Computer wk: 214-519-2399 @ DSC A Subsidiary of Hewlett-Packard USMAIL: EMAIL: 2100 Sonata Ln kcantrel@digi.lonestar.org Carrollton TX 75007 or ...!uunet!digi!kcantrel -----------------------------------------------------------------------
scotth@harlie.corp.sgi.com (Scott Henry) (09/13/90)
Here is the keymapping file that I was using (before I changed to epoch, anyway). It's basically a hacked-up version of "term/vt100.el". I named it "term/iris-ansi.el" with a hard link as "term/iris-ansi-net.el". You also need to put a line in your ~/.emacs like: (if (eq window-system 'x) () (setq term-setup-hook '(lambda nil (enable-arrow-keys)))) You can do similar things for other terminals not in the normal distribution. Just make the file name term/${TERM}.el and things should work just fine. ;;; term/iris-ansi.el ;; Map Iris 4D function key escape sequences from a wsh ;; into the standard slots in function-keymap. ;; This is just a hacked-up version of vt100.el so as to use the 4D ;; keyboard escape sequences (and some added keys). ;; Look at keypad.el for the meaning of the codes. ;; This software is in the public domain. ;; Hacker: Scott Henry (require 'keypad) (defvar Iris-CSI-map nil "The Iris-CSI-map maps the CSI function keys on the Iris 4D keyboard. The CSI keys are the arrow keys.") (if (not Iris-CSI-map) (progn (setq Iris-CSI-map (lookup-key global-map "\e[")) (if (not (keymapp Iris-CSI-map)) (setq Iris-CSI-map (make-sparse-keymap))) ;; <ESC>[ commands (setup-terminal-keymap Iris-CSI-map '(("A" . ?u) ; up arrow ("B" . ?d) ; down-arrow ("C" . ?r) ; right-arrow ("D" . ?l) ; left-arrow ("H" . ?h) ; home key ("161q" . ?P) ; shift up arrow ("164q" . ?N) ; shift down arrow ("158q" . ?1) ; shift left arrow ("167q" . ?3) ; shift right arrow ("150q" . ?P) ; page up key ("154q" . ?N) ; page down key ("159q" . ?\C-a) ; control left arrow ("168q" . ?\C-b) ; control right arrow ("139q" . ?0) ; insert key ("162q" . ?7) ; control up arrow ("165q" . ?9) ; control down arrow ("146q" . ?\C-c) ; end key ("147q" . ?f) ; shift end key ("P" . ?\C-d) ; shift delete ("142q" . ?k) ; control delete ("143q" . ?u) ; shift home ("144q" . ?u) ; control home )))) (defun enable-arrow-keys () "Enable the use of the VT100 arrow keys for cursor motion. Because of the nature of the VT100, this unavoidably breaks the standard Emacs command ESC [; therefore, it is not done by default, but only if you give this command." (interactive) (global-set-key "\e[" Iris-CSI-map)) -- Scott Henry <scotth@sgi.com> / Traveller on Dragon Wings Information Services, / Help! My disclaimer is missing! Silicon Graphics, Inc / 'Under-achiever and proud of it!' -- Bart Simpson