Path: utzoo!utgpu!jarvis.csri.toronto.edu!clyde.concordia.ca!uunet!aplcen!uakari.primate.wisc.edu!zaphod.mps.ohio-state.edu!usc!sdsu!ucsd!ucsdhub!hp-sdd!megatek!eta!hollen From: hollen@eta.megatek.uucp (Dion Hollenbeck) Newsgroups: gnu.emacs Subject: Re: (Re)defining numeric keypad keys Message-ID: <877@megatek.UUCP> Date: 4 Jan 90 14:55:38 GMT References: <1755@rex.cs.tulane.edu> Sender: news@megatek.UUCP Distribution: na Lines: 69 From article <1755@rex.cs.tulane.edu>, by georgiou@rex.cs.tulane.edu (George Georgiou): > (GNU Emacs 18.55.3, berkeley-unix) > I am trying to redefine some numeric keypad keys on a vt100 compatible > terminal, but run into the following problem: > Here's an example of how I set up my keypad. Most of it came from edt.el. (require 'keypad) ;; Key Bindings (define-key function-keymap "u" 'previous-line) ;Up arrow (define-key function-keymap "d" 'next-line) ;down arrow (define-key function-keymap "l" 'backward-char) ;right arrow (define-key function-keymap "r" 'forward-char) ;left arrow (define-key function-keymap "\C-b" 'query-replace) ;PF2 (define-key function-keymap "\C-c" 'isearch-forward) ;PF3 (define-key function-keymap "\C-d" 'move-to-beginning) ;PF4 (define-key function-keymap "7" 'set-mark-command) ;7 keypad key, etc. (define-key function-keymap "8" 'kill-region) ;8 keypad key, etc. (define-key function-keymap "9" 'copy-region-as-kill) ;9 keypad key, etc. [...stuff deleted...] (define-key function-keymap "\C-a" 'GOLD-prefix) ;PF1 ("gold") (setq GOLD-map (make-keymap)) (fset 'GOLD-prefix GOLD-map) (defvar GOLD-map nil "GOLD-map maps the function keys on the VT100 keyboard preceeded by the PF1 key. GOLD is the ASCII the 7-bit escape sequence OP.") (defun define-keypad-key (keymap function-keymap-slot definition) (let ((function-key-sequence (function-key-sequence function-keymap-slot))) (if function-key-sequence (define-key keymap function-key-sequence definition)))) ;;Bind GOLD/Keyboard keys (define-key GOLD-map "\C-g" 'keyboard-quit) ; just for safety (define-key GOLD-map "\C-m" 'newline-and-indent) ;"Return" (define-key GOLD-map " " 'undo) ;"Spacebar" (define-key GOLD-map "=" 'goto-line) ; "=" (define-key GOLD-map "]" 'call-last-kbd-macro) ; "]" (define-key GOLD-map "`" 'what-line) ; "`" (define-key GOLD-map "/" 'comment-for-c) ; "/" (define-key GOLD-map "?" 'apropos) ; "?" (define-key GOLD-map "1" 'delete-other-windows) ; "1" (#, not kpad) [...stuff deleted...] ;; letter combinations: (i.e. GOLD - "b" (define-key GOLD-map "b" 'buffer-writeable) ; "b" (define-key GOLD-map "B" 'buffer-writeable) ; "B" (define-key GOLD-map "c" 'case-flip-character) ; "c" (define-key GOLD-map "C" 'case-flip-character) ; "C" [...stuff deleted...] The letter combinations could also be split to be case sensitive, but in most cases, I did not want to worry about case sensitivity. What I have not been able to get working that was working in edt.el is the concept of GOLD - otherkeypadkey. I just have not had time to work on it and the lack of a full-featured debugger for lisp has caused me to put it aside for the time being. Dion Hollenbeck (619) 455-5590 x2814 Megatek Corporation, 9645 Scranton Road, San Diego, CA 92121 uunet!megatek!hollen or hollen@megatek.uucp