[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/lisp/emulation/tpu-edt.el, v [EMACS_22_BA
From: |
Stefan Monnier |
Subject: |
[Emacs-diffs] Changes to emacs/lisp/emulation/tpu-edt.el, v [EMACS_22_BASE] |
Date: |
Mon, 22 Oct 2007 04:42:14 +0000 |
CVSROOT: /sources/emacs
Module name: emacs
Branch: EMACS_22_BASE
Changes by: Stefan Monnier <monnier> 07/10/22 04:42:13
Index: emulation/tpu-edt.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/emulation/tpu-edt.el,v
retrieving revision 1.49.2.4
retrieving revision 1.49.2.5
diff -u -b -r1.49.2.4 -r1.49.2.5
--- emulation/tpu-edt.el 6 Aug 2007 16:21:33 -0000 1.49.2.4
+++ emulation/tpu-edt.el 22 Oct 2007 04:42:09 -0000 1.49.2.5
@@ -273,6 +273,7 @@
;;; Code:
+(eval-when-compile (require 'cl))
;; we use picture-mode functions
(require 'picture)
@@ -2435,6 +2436,7 @@
(tpu-error (message "Sorry, couldn't copy - %s." (cdr conditions)))))
(kill-buffer "*TPU-Notice*")))
+(defvar tpu-edt-old-global-values nil)
;;;
;;; Start and Stop TPU-edt
@@ -2443,6 +2445,8 @@
(defun tpu-edt-on ()
"Turn on TPU/edt emulation."
(interactive)
+ ;; To clean things up (and avoid cycles in the global map).
+ (tpu-edt-off)
;; First, activate tpu-global-map, while protecting the original keymap.
(set-keymap-parent tpu-global-map global-map)
(setq global-map tpu-global-map)
@@ -2453,9 +2457,12 @@
(tpu-set-mode-line t)
(tpu-advance-direction)
;; set page delimiter, display line truncation, and scrolling like TPU
- (setq-default page-delimiter "\f")
- (setq-default truncate-lines t)
- (setq scroll-step 1)
+ (dolist (varval '((page-delimiter . "\f")
+ (truncate-lines . t)
+ (scroll-step . 1)))
+ (push (cons (car varval) (default-value (car varval)))
+ tpu-edt-old-global-values)
+ (set-default (car varval) (cdr varval)))
(tpu-set-control-keys)
(and window-system (tpu-load-xkeys nil))
(tpu-arrow-history)
@@ -2472,9 +2479,9 @@
(tpu-reset-control-keys nil)
(remove-hook 'post-command-hook 'tpu-search-highlight)
(tpu-set-mode-line nil)
- (setq-default page-delimiter "^\f")
- (setq-default truncate-lines nil)
- (setq scroll-step 0)
+ (while tpu-edt-old-global-values
+ (let ((varval (pop tpu-edt-old-global-values)))
+ (set-default (car varval) (cdr varval))))
;; Remove tpu-global-map from the global map.
(let ((map global-map))
(while map
@@ -2482,7 +2489,7 @@
(if (eq tpu-global-map parent)
(set-keymap-parent map (keymap-parent parent))
(setq map parent)))))
- (ad-disable-regexp "\\`tpu-")
+ (ignore-errors (ad-disable-regexp "\\`tpu-"))
(setq tpu-edt-mode nil))
(provide 'tpu-edt)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] Changes to emacs/lisp/emulation/tpu-edt.el, v [EMACS_22_BASE],
Stefan Monnier <=