view lisp/term/AT386.el @ 558:ed498ef2108b

[xemacs-hg @ 2001-05-23 09:59:33 by ben] xemacs.mak: call `ver' to get the exact os version and put it in the installation; suggestion from adrian. behavior-defs.el: Add scroll-in-place, jka-compr, efs, fix up some things. pop.c: Remove BROKEN_CYGWIN. etc\sample.init.el: Rewrite to be much more careful about loading features -- now it decays gracefully even in the complete absence of packages. Also avoid doing obnoxious things when loading efs. configure.in: add some support for eventually turning on file coding by default. Fix numerous places where AC_MSG_WARN had quotes around its arg, which is bad. Replace with []. Same for AC_MSG_ERROR. s\cygwin32.h, s\mingw32.h: remove support for way old beta versions of cygwin. don't put -Wno-sign-compare in the system switches; this isn't a system issue. define BROKEN_SIGIO for cygwin to get C-g support. device-msw.c: signal an error rather than crash with an unavailable network printer (from Mike Alexander). event-msw.c: cleanup headers. fix (hopefully) an error with data corruption when sending to a network connection. fileio.c: Fix evil code that attempts to handle the ~user prefix by (a) always assuming we're referencing ourselves and not even verifying the user -- hence any file with a tilde as its first char is invalid! (b) if there wasn't a slash following the filename, the pointer was set *past* the end of file and we started reading from uninitialized memory. Now we simply treat these as files, always. optionally for 21.4 (doc fix): lread.c: cambia de pas_de_lache_ici -- al minimo usa la palabra certa. frame.c: fix warnings. emacs.c, nt.c, ntproc.c, process-nt.c, realpath.c, unexnt.c: rename MAX_PATH to standard PATH_MAX. process-nt.c, realpath.c: cleanup headers. process-unix.c, sysdep.c, systime.h, syswindows.h: kill BROKEN_CYGWIN and support for way old beta versions of cygwin. sysfile.h: use _MAX_PATH (Windows) preferentially for PATH_MAX if defined. include io.h on Cygwin (we need get_osfhandle()). include sys/fcntl.h always, since we were including it in various header files anyway. unexcw.c: fix up style to conform to standard. remove duplicate definition of PERROR. buffer.c: comment change. database.c, debug.h, device-tty.c, dired-msw.c, glyphs-msw.c: header cleanups (remove places that directly include a system header file, because we have our own layer to do this more cleanly and portably); indentation fixes.
author ben
date Wed, 23 May 2001 09:59:48 +0000
parents 3ecd8885ac67
children 11502791fc1c
line wrap: on
line source

;; AT386.el --- terminal support package for IBM AT keyboards

;; Author: Eric S. Raymond <esr@snark.thyrsus.com>
;; Keywords: terminals

;; Copyright (C) 1992 Free Software Foundation, Inc.

;; This file is part of XEmacs.

;; XEmacs is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation; either version 2, or (at your option)
;; any later version.

;; XEmacs is distributed in the hope that it will be useful, but
;; WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
;; General Public License for more details.

;; You should have received a copy of the GNU General Public License
;; along with XEmacs; see the file COPYING.  If not, write to the Free
;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
;; 02111-1307, USA.

;;; Commentary:

;;; Uses the Emacs 19 terminal initialization features --- won't work with 18.

;;; Code:

(if (boundp 'AT386-keypad-map)
    nil
  ;; The terminal initialization should already have set up some keys
  (setq AT386-keypad-map (lookup-key function-key-map "\e["))
  (if (not (keymapp AT386-keypad-map))
      (error "What?  Your AT386 termcap/terminfo has no keycaps in it."))

  ;; Equivalents of these are set up automatically by termcap/terminfo
  ;;  (define-key AT386-keypad-map "A" [up])
  ;;  (define-key AT386-keypad-map "B" [down])
  ;;  (define-key AT386-keypad-map "C" [right])
  ;;  (define-key AT386-keypad-map "D" [left])

  ;; These would be set up by terminfo, but not termcap
  (define-key AT386-keypad-map "H" [home])
  (define-key AT386-keypad-map "Y" [end])
  (define-key AT386-keypad-map "U" [next])	;; PgDn
  (define-key AT386-keypad-map "V" [prior])	;; PgUp
  (define-key AT386-keypad-map "@" [insert])	;; Ins key

  ;; These are not normally set up by either
  (define-key AT386-keypad-map "G" [kp-5])	;; Unlabeled center key
  (define-key AT386-keypad-map "S" [kp-subtract])
  (define-key AT386-keypad-map "T" [kp-add])

  ;; Arrange for the ALT key to be equivalent to ESC
  (define-key function-key-map "\eN" [?\e]) ; ALT map
  )


;;; AT386.el ends here