summaryrefslogtreecommitdiff
path: root/lisp/simple.el
diff options
context:
space:
mode:
authorChong Yidong <cyd@stupidchicken.com>2007-03-17 19:44:21 +0000
committerChong Yidong <cyd@stupidchicken.com>2007-03-17 19:44:21 +0000
commit0788987302b3ae02bdd6a101dc2d0503d45b37d1 (patch)
treedd5de7811850126411d8c06c764029bb4becd315 /lisp/simple.el
parentf24478c1c500c5538c8e8b307e06331b92bb8f58 (diff)
downloademacs-0788987302b3ae02bdd6a101dc2d0503d45b37d1.tar.gz
(line-move-1): Respect `inhibit-line-move-field-capture' property.
Diffstat (limited to 'lisp/simple.el')
-rw-r--r--lisp/simple.el10
1 files changed, 6 insertions, 4 deletions
diff --git a/lisp/simple.el b/lisp/simple.el
index 1dd6b802c05..1f233de9857 100644
--- a/lisp/simple.el
+++ b/lisp/simple.el
@@ -3594,7 +3594,7 @@ Outline mode sets this."
'end-of-buffer)
nil)))
;; Move by arg lines, but ignore invisible ones.
- (let (done line-end)
+ (let (done)
(while (and (> arg 0) (not done))
;; If the following character is currently invisible,
;; skip all characters with that same `invisible' property value.
@@ -3603,9 +3603,11 @@ Outline mode sets this."
;; Move a line.
;; We don't use `end-of-line', since we want to escape
;; from field boundaries ocurring exactly at point.
- (let ((inhibit-field-text-motion t))
- (setq line-end (line-end-position)))
- (goto-char (constrain-to-field line-end (point) t t))
+ (goto-char (constrain-to-field
+ (let ((inhibit-field-text-motion t))
+ (line-end-position))
+ (point) t t
+ 'inhibit-line-move-field-capture))
;; If there's no invisibility here, move over the newline.
(cond
((eobp)