Mercurial > emacs
changeset 81314:5671bcc5449a
(tpu-gold-map): Rename from GOLD-map.
(tpu-lucid-emacs-p): Remove. Use (featurep 'xemacs) instead.
(CSI-map, GOLD-CSI-map, GOLD-SS3-map, SS3-map): Delete vars.
(tpu-gold-map, tpu-global-map): Add all the SS3 and CSI bindings, using
keysyms rather than byte sequences.
(tpu-copy-keyfile): Don't force the user to use tpu-mapper.el.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Tue, 12 Jun 2007 04:55:40 +0000 |
parents | 8021008d25bf |
children | 19cac94ab3b0 |
files | lisp/ChangeLog lisp/emulation/tpu-edt.el |
diffstat | 2 files changed, 138 insertions(+), 186 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ChangeLog Mon Jun 11 22:16:43 2007 +0000 +++ b/lisp/ChangeLog Tue Jun 12 04:55:40 2007 +0000 @@ -1,3 +1,12 @@ +2007-06-12 Stefan Monnier <monnier@iro.umontreal.ca> + + * emulation/tpu-edt.el (tpu-gold-map): Rename from GOLD-map. + (tpu-lucid-emacs-p): Remove. Use (featurep 'xemacs) instead. + (CSI-map, GOLD-CSI-map, GOLD-SS3-map, SS3-map): Delete vars. + (tpu-gold-map, tpu-global-map): Add all the SS3 and CSI bindings, using + keysyms rather than byte sequences. + (tpu-copy-keyfile): Don't force the user to use tpu-mapper.el. + 2007-06-11 Stefan Monnier <monnier@iro.umontreal.ca> * progmodes/sh-script.el (sh-font-lock-backslash-quote)
--- a/lisp/emulation/tpu-edt.el Mon Jun 11 22:16:43 2007 +0000 +++ b/lisp/emulation/tpu-edt.el Tue Jun 12 04:55:40 2007 +0000 @@ -207,16 +207,16 @@ ;; ; The emacs universal-argument function is very useful. ;; ; This line maps universal-argument to Gold-PF1. -;; (define-key GOLD-SS3-map "P" 'universal-argument) ; Gold-PF1 +;; (define-key tpu-gold-map [kp_f1] 'universal-argument) ; Gold-PF1 ;; ; Make KP7 move by paragraphs, instead of pages. -;; (define-key SS3-map "w" 'tpu-paragraph) ; KP7 +;; (define-key tpu-global-map [kf_7] 'tpu-paragraph) ; KP7 ;; ; Repeat the preceding mappings for X-windows. ;; (cond ;; (window-system -;; (global-set-key [kp_7] 'tpu-paragraph) ; KP7 -;; (define-key GOLD-map [kp_f1] 'universal-argument))) ; GOLD-PF1 +;; (define-key tpu-global-map [kp_7] 'tpu-paragraph) ; KP7 +;; (define-key tpu-gold-map [kp_f1] 'universal-argument))) ; GOLD-PF1 ;; ; Display the TPU-edt version. ;; (tpu-version) @@ -292,146 +292,88 @@ ;;; User Configurable Variables ;;; (defcustom tpu-have-ispell t - "*If non-nil (default), TPU-edt uses ispell for spell checking." + "If non-nil (default), TPU-edt uses ispell for spell checking." :type 'boolean :group 'tpu) (defcustom tpu-kill-buffers-silently nil - "*If non-nil, TPU-edt kills modified buffers without asking." + "If non-nil, TPU-edt kills modified buffers without asking." :type 'boolean :group 'tpu) (defcustom tpu-percent-scroll 75 - "*Percentage of the screen to scroll for next/previous screen commands." + "Percentage of the screen to scroll for next/previous screen commands." :type 'integer :group 'tpu) (defcustom tpu-pan-columns 16 - "*Number of columns the tpu-pan functions scroll left or right." + "Number of columns the tpu-pan functions scroll left or right." :type 'integer :group 'tpu) ;;; -;;; Emacs version identifiers - currently referenced by -;;; -;;; o tpu-mark o tpu-set-mark -;;; o mode line section o tpu-load-xkeys -;;; -(defconst tpu-lucid-emacs-p - (string-match "Lucid" emacs-version) - "Non-nil if we are running Lucid Emacs.") - -;;; ;;; Global Keymaps ;;; -(defvar CSI-map - (let ((map (make-sparse-keymap))) - (define-key map "A" 'tpu-previous-line) ; up - (define-key map "B" 'tpu-next-line) ; down - (define-key map "D" 'tpu-backward-char) ; left - (define-key map "C" 'tpu-forward-char) ; right - (define-key map "1~" 'tpu-search) ; Find - (define-key map "2~" 'tpu-paste) ; Insert Here - (define-key map "3~" 'tpu-cut) ; Remove - (define-key map "4~" 'tpu-select) ; Select - (define-key map "5~" 'tpu-scroll-window-down) ; Prev Screen - (define-key map "6~" 'tpu-scroll-window-up) ; Next Screen +(defvar tpu-gold-map + (let ((map (make-keymap))) + ;; Previously we used escape sequences here. We now instead presume + ;; that term/*.el does its job to map the escape sequence to the right + ;; key-symbol. - (define-key map "11~" 'nil) ; F1 - (define-key map "12~" 'nil) ; F2 - (define-key map "13~" 'nil) ; F3 - (define-key map "14~" 'nil) ; F4 - (define-key map "15~" 'nil) ; F5 - (define-key map "17~" 'nil) ; F6 - (define-key map "18~" 'nil) ; F7 - (define-key map "19~" 'nil) ; F8 - (define-key map "20~" 'nil) ; F9 - (define-key map "21~" 'tpu-exit) ; F10 - (define-key map "23~" 'tpu-insert-escape) ; F11 (ESC) - (define-key map "24~" 'tpu-next-beginning-of-line) ; F12 (BS) - (define-key map "25~" 'tpu-delete-previous-word) ; F13 (LF) - (define-key map "26~" 'tpu-toggle-overwrite-mode) ; F14 - (define-key map "28~" 'tpu-help) ; HELP - (define-key map "29~" 'execute-extended-command) ; DO - (define-key map "31~" 'tpu-goto-breadcrumb) ; F17 - (define-key map "32~" 'nil) ; F18 - (define-key map "33~" 'nil) ; F19 - (define-key map "34~" 'nil) ; F20 - map) - "Maps the CSI function keys on the VT100 keyboard. -CSI is DEC's name for the sequence <ESC>[.") + (define-key map [up] 'tpu-move-to-beginning) ; up-arrow + (define-key map [down] 'tpu-move-to-end) ; down-arrow + (define-key map [right] 'end-of-line) ; right-arrow + (define-key map [left] 'beginning-of-line) ; left-arrow -(defvar GOLD-CSI-map - (let ((map (make-sparse-keymap))) - (define-key map "A" 'tpu-move-to-beginning) ; up-arrow - (define-key map "B" 'tpu-move-to-end) ; down-arrow - (define-key map "C" 'end-of-line) ; right-arrow - (define-key map "D" 'beginning-of-line) ; left-arrow - - (define-key map "1~" 'nil) ; Find - (define-key map "2~" 'nil) ; Insert Here - (define-key map "3~" 'tpu-store-text) ; Remove - (define-key map "4~" 'tpu-unselect) ; Select - (define-key map "5~" 'tpu-previous-window) ; Prev Screen - (define-key map "6~" 'tpu-next-window) ; Next Screen + (define-key map [find] 'nil) ; Find + (define-key map [insert] 'nil) ; Insert Here + (define-key map [delete] 'tpu-store-text) ; Remove + (define-key map [select] 'tpu-unselect) ; Select + (define-key map [prior] 'tpu-previous-window) ; Prev Screen + (define-key map [next] 'tpu-next-window) ; Next Screen - (define-key map "11~" 'nil) ; F1 - (define-key map "12~" 'nil) ; F2 - (define-key map "13~" 'nil) ; F3 - (define-key map "14~" 'nil) ; F4 - (define-key map "16~" 'nil) ; F5 - (define-key map "17~" 'nil) ; F6 - (define-key map "18~" 'nil) ; F7 - (define-key map "19~" 'nil) ; F8 - (define-key map "20~" 'nil) ; F9 - (define-key map "21~" 'nil) ; F10 - (define-key map "23~" 'nil) ; F11 - (define-key map "24~" 'nil) ; F12 - (define-key map "25~" 'nil) ; F13 - (define-key map "26~" 'nil) ; F14 - (define-key map "28~" 'describe-bindings) ; HELP - (define-key map "29~" 'nil) ; DO - (define-key map "31~" 'tpu-drop-breadcrumb) ; F17 - (define-key map "32~" 'nil) ; F18 - (define-key map "33~" 'nil) ; F19 - (define-key map "34~" 'nil) ; F20 - map) - "Maps the function keys on the VT100 keyboard preceded by GOLD-CSI.") + (define-key map [f1] 'nil) ; F1 + (define-key map [f2] 'nil) ; F2 + (define-key map [f3] 'nil) ; F3 + (define-key map [f4] 'nil) ; F4 + (define-key map [f5] 'nil) ; F5 + (define-key map [f6] 'nil) ; F6 + (define-key map [f7] 'nil) ; F7 + (define-key map [f8] 'nil) ; F8 + (define-key map [f9] 'nil) ; F9 + (define-key map [f10] 'nil) ; F10 + (define-key map [f11] 'nil) ; F11 + (define-key map [f12] 'nil) ; F12 + (define-key map [f13] 'nil) ; F13 + (define-key map [f14] 'nil) ; F14 + (define-key map [help] 'describe-bindings) ; HELP + (define-key map [menu] 'nil) ; DO + (define-key map [f17] 'tpu-drop-breadcrumb) ; F17 + (define-key map [f18] 'nil) ; F18 + (define-key map [f19] 'nil) ; F19 + (define-key map [f20] 'nil) ; F20 -(defvar GOLD-SS3-map - (let ((map (make-sparse-keymap))) - (define-key map "A" 'tpu-move-to-beginning) ; up-arrow - (define-key map "B" 'tpu-move-to-end) ; down-arrow - (define-key map "C" 'end-of-line) ; right-arrow - (define-key map "D" 'beginning-of-line) ; left-arrow + (define-key map [kp-f1] 'keyboard-quit) ; PF1 + (define-key map [kp-f2] 'help-for-help) ; PF2 + (define-key map [kp-f3] 'tpu-search) ; PF3 + (define-key map [kp-f4] 'tpu-undelete-lines) ; PF4 + (define-key map [kp-0] 'open-line) ; KP0 + (define-key map [kp-1] 'tpu-change-case) ; KP1 + (define-key map [kp-2] 'tpu-delete-to-eol) ; KP2 + (define-key map [kp-3] 'tpu-special-insert) ; KP3 + (define-key map [kp-4] 'tpu-move-to-end) ; KP4 + (define-key map [kp-5] 'tpu-move-to-beginning) ; KP5 + (define-key map [kp-6] 'tpu-paste) ; KP6 + (define-key map [kp-7] 'execute-extended-command) ; KP7 + (define-key map [kp-8] 'tpu-fill) ; KP8 + (define-key map [kp-9] 'tpu-replace) ; KP9 + (define-key map [kp-subtract] 'tpu-undelete-words) ; KP- + (define-key map [kp-separator] 'tpu-undelete-char) ; KP, + (define-key map [kp-decimal] 'tpu-unselect) ; KP. + (define-key map [kp-enter] 'tpu-substitute) ; KPenter - (define-key map "P" 'keyboard-quit) ; PF1 - (define-key map "Q" 'help-for-help) ; PF2 - (define-key map "R" 'tpu-search) ; PF3 - (define-key map "S" 'tpu-undelete-lines) ; PF4 - (define-key map "p" 'open-line) ; KP0 - (define-key map "q" 'tpu-change-case) ; KP1 - (define-key map "r" 'tpu-delete-to-eol) ; KP2 - (define-key map "s" 'tpu-special-insert) ; KP3 - (define-key map "t" 'tpu-move-to-end) ; KP4 - (define-key map "u" 'tpu-move-to-beginning) ; KP5 - (define-key map "v" 'tpu-paste) ; KP6 - (define-key map "w" 'execute-extended-command) ; KP7 - (define-key map "x" 'tpu-fill) ; KP8 - (define-key map "y" 'tpu-replace) ; KP9 - (define-key map "m" 'tpu-undelete-words) ; KP- - (define-key map "l" 'tpu-undelete-char) ; KP, - (define-key map "n" 'tpu-unselect) ; KP. - (define-key map "M" 'tpu-substitute) ; KPenter - map) - "Maps the function keys on the VT100 keyboard preceded by GOLD-SS3.") - -(defvar GOLD-map - (let ((map (make-keymap))) - (define-key map "\e[" GOLD-CSI-map) ; GOLD-CSI map - (define-key map "\eO" GOLD-SS3-map) ; GOLD-SS3 map ;; (define-key map "\C-A" 'tpu-toggle-overwrite-mode) ; ^A (define-key map "\C-B" 'nil) ; ^B @@ -553,48 +495,72 @@ map) "Maps the function keys on the VT100 keyboard preceded by PF1. GOLD is the ASCII 7-bit escape sequence <ESC>OP.") - -(defvar SS3-map - (let ((map (make-sparse-keymap))) - (define-key map "P" GOLD-map) ; GOLD map - ;; - (define-key map "A" 'tpu-previous-line) ; up - (define-key map "B" 'tpu-next-line) ; down - (define-key map "C" 'tpu-forward-char) ; right - (define-key map "D" 'tpu-backward-char) ; left - - (define-key map "Q" 'tpu-help) ; PF2 - (define-key map "R" 'tpu-search-again) ; PF3 - (define-key map "S" 'tpu-delete-current-line) ; PF4 - (define-key map "p" 'tpu-line) ; KP0 - (define-key map "q" 'tpu-word) ; KP1 - (define-key map "r" 'tpu-end-of-line) ; KP2 - (define-key map "s" 'tpu-char) ; KP3 - (define-key map "t" 'tpu-advance-direction) ; KP4 - (define-key map "u" 'tpu-backup-direction) ; KP5 - (define-key map "v" 'tpu-cut) ; KP6 - (define-key map "w" 'tpu-page) ; KP7 - (define-key map "x" 'tpu-scroll-window) ; KP8 - (define-key map "y" 'tpu-append-region) ; KP9 - (define-key map "m" 'tpu-delete-current-word) ; KP- - (define-key map "l" 'tpu-delete-current-char) ; KP, - (define-key map "n" 'tpu-select) ; KP. - (define-key map "M" 'newline) ; KPenter - map) - "Maps the SS3 function keys on the VT100 keyboard. -SS3 is DEC's name for the sequence <ESC>O.") +(define-obsolete-variable-alias 'GOLD-map 'tpu-gold-map "23.1") (defvar tpu-global-map (let ((map (make-sparse-keymap))) - (define-key map "\e[" CSI-map) - (define-key map "\eO" SS3-map) + + ;; Previously defined in CSI-map. We now presume that term/*.el does + ;; its job to map the escape sequence to the right key-symbol. + (define-key map [find] 'tpu-search) ; Find + (define-key map [insert] 'tpu-paste) ; Insert Here + (define-key map [delete] 'tpu-cut) ; Remove + (define-key map [select] 'tpu-select) ; Select + (define-key map [prior] 'tpu-scroll-window-down) ; Prev Screen + (define-key map [next] 'tpu-scroll-window-up) ; Next Screen + + (define-key map [f1] 'nil) ; F1 + (define-key map [f2] 'nil) ; F2 + (define-key map [f3] 'nil) ; F3 + (define-key map [f4] 'nil) ; F4 + (define-key map [f5] 'nil) ; F5 + (define-key map [f6] 'nil) ; F6 + (define-key map [f7] 'nil) ; F7 + (define-key map [f8] 'nil) ; F8 + (define-key map [f9] 'nil) ; F9 + (define-key map [f10] 'tpu-exit) ; F10 + (define-key map [f11] 'tpu-insert-escape) ; F11 (ESC) + (define-key map [f12] 'tpu-next-beginning-of-line) ; F12 (BS) + (define-key map [f13] 'tpu-delete-previous-word) ; F13 (LF) + (define-key map [f14] 'tpu-toggle-overwrite-mode) ; F14 + (define-key map [help] 'tpu-help) ; HELP + (define-key map [menu] 'execute-extended-command) ; DO + (define-key map [f17] 'tpu-goto-breadcrumb) ; F17 + (define-key map [f18] 'nil) ; F18 + (define-key map [f19] 'nil) ; F19 + (define-key map [f20] 'nil) ; F20 + + + ;; Previously defined in SS3-map. We now presume that term/*.el does + ;; its job to map the escape sequence to the right key-symbol. + (define-key map [kp-f1] tpu-gold-map) ; GOLD map + ;; + (define-key map [up] 'tpu-previous-line) ; up + (define-key map [down] 'tpu-next-line) ; down + (define-key map [right] 'tpu-forward-char) ; right + (define-key map [left] 'tpu-backward-char) ; left + + (define-key map [kp-f2] 'tpu-help) ; PF2 + (define-key map [kp-f3] 'tpu-search-again) ; PF3 + (define-key map [kp-f4] 'tpu-delete-current-line) ; PF4 + (define-key map [kp-0] 'tpu-line) ; KP0 + (define-key map [kp-1] 'tpu-word) ; KP1 + (define-key map [kp-2] 'tpu-end-of-line) ; KP2 + (define-key map [kp-3] 'tpu-char) ; KP3 + (define-key map [kp-4] 'tpu-advance-direction) ; KP4 + (define-key map [kp-5] 'tpu-backup-direction) ; KP5 + (define-key map [kp-6] 'tpu-cut) ; KP6 + (define-key map [kp-7] 'tpu-page) ; KP7 + (define-key map [kp-8] 'tpu-scroll-window) ; KP8 + (define-key map [kp-9] 'tpu-append-region) ; KP9 + (define-key map [kp-subtract] 'tpu-delete-current-word) ; KP- + (define-key map [kp-separator] 'tpu-delete-current-char) ; KP, + (define-key map [kp-decimal] 'tpu-select) ; KP. + (define-key map [kp-enter] 'newline) ; KPenter + map) "TPU-edt global keymap.") -(and (not (boundp 'minibuffer-local-ns-map)) - (defvar minibuffer-local-ns-map (make-sparse-keymap) - "Hack to give Lucid Emacs the same maps as ordinary Emacs.")) - ;;; ;;; Global Variables @@ -697,7 +663,7 @@ (setq tpu-mark-flag (if transient-mark-mode "" (if (tpu-mark) " @" " "))) (force-mode-line-update)) -(cond (tpu-lucid-emacs-p +(cond ((featurep 'xemacs) (add-hook 'zmacs-deactivate-region-hook 'tpu-update-mode-line) (add-hook 'zmacs-activate-region-hook 'tpu-update-mode-line)) (t @@ -778,7 +744,7 @@ "TPU-edt version of the mark function. Return the appropriate value of the mark for the current version of Emacs." - (cond (tpu-lucid-emacs-p (mark (not zmacs-regions))) + (cond ((featurep 'xemacs) (mark (not zmacs-regions))) (t (and mark-active (mark (not transient-mark-mode)))))) (defun tpu-set-mark (pos) @@ -2366,7 +2332,7 @@ (setq file (expand-file-name file))) (tpu-xkeys-file (setq file (expand-file-name tpu-xkeys-file))) - (tpu-lucid-emacs-p + ((featurep 'xemacs) (setq file (convert-standard-filename (expand-file-name "~/.tpu-lucid-keys")))) (t @@ -2382,34 +2348,11 @@ (cond ((file-readable-p file) (load-file file)) (t - (switch-to-buffer "*scratch*") - (erase-buffer) - (insert " - - Ack!! You're running TPU-edt under X-windows without loading an - X key definition file. To create a TPU-edt X key definition - file, run the tpu-mapper.el program. It came with TPU-edt. It - even includes directions on how to use it! Perhaps it's lying - around here someplace. ") - (let ((file "tpu-mapper.el") - (found nil) - (path nil) - (search-list (append (list (expand-file-name ".")) load-path))) - (while (and (not found) search-list) - (setq path (concat (car search-list) - (if (string-match "/$" (car search-list)) "" "/") - file)) - (if (and (file-exists-p path) (not (file-directory-p path))) - (setq found t)) - (setq search-list (cdr search-list))) - (cond (found - (insert (format - "Ah yes, there it is, in \n\n %s \n\n" path)) - (if (tpu-y-or-n-p "Do you want to run it now? ") - (load-file path))) - (t - (insert "Nope, I can't seem to find it. :-(\n\n") - (sit-for 120))))))) + ;; FIXME: This used to force the user to build `file'. With the + ;; new code, such a file is not even necessary, but we'll keep + ;; a warning message. + (message "%s not found: use tpu-mapper.el to create it" + (abbreviate-file-name file))))) (defun tpu-copy-keyfile (oldname newname) "Copy the TPU-edt X key definitions file to the new default name."