diff options
| -rw-r--r-- | lisp/term.el | 3 | ||||
| -rw-r--r-- | test/lisp/term-tests.el | 7 |
2 files changed, 9 insertions, 1 deletions
diff --git a/lisp/term.el b/lisp/term.el index 19e68ddb49e..715f39bbbfc 100644 --- a/lisp/term.el +++ b/lisp/term.el @@ -2904,7 +2904,8 @@ See `term-prompt-regexp'." (when (not (or (eobp) term-insert-mode)) (let ((pos (point))) (term-move-columns columns) - (delete-region pos (point)))) + (delete-region pos (point)) + (setq term-current-column nil))) ;; In insert mode if the current line ;; has become too long it needs to be ;; chopped off. diff --git a/test/lisp/term-tests.el b/test/lisp/term-tests.el index 8aaa61a210b..72a9ad1ef74 100644 --- a/test/lisp/term-tests.el +++ b/test/lisp/term-tests.el @@ -89,6 +89,13 @@ first line\r_next line\r\n")) "\e[2;1Hc" "\e[1;2Hb" "\e[1;1Ha") "" t)))) + (should (equal "abcde j" + (term-test-screen-from-input + 10 12 '("abcdefghij" + "\e[H" ;move back to point-min + "abcde" + " j")))) + ;; Relative positioning. (should (equal "ab\ncd" (term-test-screen-from-input |
