diff lisp/term.el @ 90133:4da4a09e8b1b

Revision: miles@gnu.org--gnu-2005/emacs--unicode--0--patch-31 Merge from emacs--cvs-trunk--0 Patches applied: * emacs--cvs-trunk--0 (patch 206-222) - Update from CVS - Merge from gnus--rel--5.10 * gnus--rel--5.10 (patch 45-52) - Update from CVS - Update from CVS: texi Makefile.in CVS keyw cruft - Update from CVS: ChangeLog tweaks
author Miles Bader <miles@gnu.org>
date Thu, 31 Mar 2005 09:58:14 +0000
parents fb79180b618d 47b31fabc07f
children 02f1dbc4a199
line wrap: on
line diff
--- a/lisp/term.el	Tue Mar 29 00:48:14 2005 +0000
+++ b/lisp/term.el	Thu Mar 31 09:58:14 2005 +0000
@@ -2571,7 +2571,16 @@
 
 (defun term-move-columns (delta)
   (setq term-current-column (max 0 (+ (term-current-column) delta)))
-  (move-to-column term-current-column t))
+  (let (point-at-eol)
+    (save-excursion
+      (end-of-line)
+      (setq point-at-eol (point)))
+    (move-to-column term-current-column t)
+    ;; If move-to-column extends the current line it will use the face
+    ;; from the last character on the line, set the face for the chars
+    ;; to default.
+    (when (> (point) point-at-eol)
+      (put-text-property point-at-eol (point) 'face 'default))))
 
 ;; Insert COUNT copies of CHAR in the default face.
 (defun term-insert-char (char count)
@@ -3026,7 +3035,7 @@
 ;;; default one. 
 (defun term-reset-terminal ()
   (erase-buffer)
-  (setq term-current-row 1)
+  (setq term-current-row 0)
   (setq term-current-column 1)
   (setq term-insert-mode nil)
   (setq term-current-face nil)
@@ -3035,7 +3044,7 @@
   (setq term-ansi-current-reverse 0)
   (setq term-ansi-current-color 0)
   (setq term-ansi-current-invisible 0)
-  (setq term-ansi-face-already-done 1)
+  (setq term-ansi-face-already-done 0)
   (setq term-ansi-current-bg-color 0))
 
 ;;; New function to deal with ansi colorized output, as you can see you can
@@ -3683,12 +3692,20 @@
 ;;; at teh end of this screen line to make room.
 
 (defun term-insert-spaces (count)
-  (let ((save-point (point)) (save-eol))
+  (let ((save-point (point)) (save-eol) (point-at-eol))
     (term-vertical-motion 1)
     (if (bolp)
 	(backward-char))
     (setq save-eol (point))
+    (save-excursion
+      (end-of-line)
+      (setq point-at-eol (point)))
     (move-to-column (+ (term-start-line-column) (- term-width count)) t)
+    ;; If move-to-column extends the current line it will use the face
+    ;; from the last character on the line, set the face for the chars
+    ;; to default.
+    (when (> (point) (point-at-eol))
+      (put-text-property point-at-eol (point) 'face 'default))
     (if (> save-eol (point))
 	(delete-region (point) save-eol))
     (goto-char save-point)