diff options
-rw-r--r-- | lisp/simple.el | 14 |
1 files changed, 3 insertions, 11 deletions
diff --git a/lisp/simple.el b/lisp/simple.el index 28b62a27098..d3624fc0a9c 100644 --- a/lisp/simple.el +++ b/lisp/simple.el @@ -3536,17 +3536,9 @@ boundaries bind `inhibit-field-text-motion' to t." (or arg (setq arg 1)) (if (/= arg 1) (line-move (1- arg) t)) - (let (done pos) - (while (not done) - (beginning-of-line 1) - ;; (not bolp) means that it stopped at a field boundary. - (if (or (bobp) (not (bolp))) - (setq done t) - (sit-for 0) - (if (and (consp (setq pos (pos-visible-in-window-p (point) nil t))) - (= (car pos) 0)) - (setq done t) - (backward-char 1)))))) + (let ((orig (point))) + (vertical-motion 0) + (goto-char (constrain-to-field (point) orig (/= arg 1) t nil)))) ;;; Many people have said they rarely use this feature, and often type |