Mercurial > hg > xemacs-beta
view lisp/term/AT386.el @ 4910:6bc1f3f6cf0d
Make canoncase visible to Lisp; use it with chars in internal_equalp.
src/ChangeLog addition:
2010-02-01 Aidan Kehoe <kehoea@parhasard.net>
* fns.c (internal_equalp):
Use bytecode_arithcompare, which takes two args, instead of
passing a stack pointer to Feqlsign.
Use CANONCASE(), not DOWNCASE(), for case-insensitive character
comparison.
Correct a comment here.
* casefiddle.c (casify_object): New operation in this function,
CASE_CANONICALIZE.
(Fcanoncase): New function, used for case-insensitive comparison.
* lisp.h:
Make Fcanoncase, bytecode_arithcompare visible here.
* bytecode.c (bytecode_arithcompare):
Make this visible to other files.
lisp/ChangeLog addition:
2010-02-01 Aidan Kehoe <kehoea@parhasard.net>
* cl-macs.el (equalp):
Remove special treatment for an #'equalp with a single character
constant argument, it was incorrect (it used #'downcase instead of
#'canoncase).
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Mon, 01 Feb 2010 17:57:04 +0000 |
parents | 11502791fc1c |
children | 308d34e9f07d |
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: (defvar AT386-keypad-map) (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