GNU bug report logs - #16148
Cursor stuck on line ending w/ visual-order-cursor movement - move-point-visually fails.

Previous Next

Package: emacs;

Reported by: David Reitter <david.reitter <at> gmail.com>

Date: Sat, 14 Dec 2013 17:55:02 UTC

Severity: normal

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 16148 in the body.
You can then email your comments to 16148 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#16148; Package emacs. (Sat, 14 Dec 2013 17:55:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to David Reitter <david.reitter <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Sat, 14 Dec 2013 17:55:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: David Reitter <david.reitter <at> gmail.com>
To: Bug-Gnu-Emacs <bug-gnu-emacs <at> gnu.org>
Subject: Cursor stuck on line ending w/ visual-order-cursor movement -
 move-point-visually fails.
Date: Sat, 14 Dec 2013 12:53:51 -0500
With a certain combination of settings, cursor movement to the left fails at the (right) end of lines:

Emacs -Q -nw

[Enter and evaluate the following:]

	(whitespace-newline-mode 1)
	(global-hl-line-mode 1)
	(setq visual-order-cursor-movement t)

[Then press left-arrow repeatedly.  Cursor will get "stuck" on a line ending.]


Further observations:
- the "-nw" is not necessary - this is just to simplify things.
- `hl-line-mode' alone does not suffice - it has to the be `global-hl-line-mode'.



Second, simpler recipe:

Emacs -Q -nw

[Enter and evaluate the following:]

	(whitespace-newline-mode 1)

Place cursor at end of line, then M-: (move-point-visually -1)  RET.
Nothing happens.







In GNU Emacs 24.3.50.3 (x86_64-apple-darwin13.0.0, NS apple-appkit-1265.00)
 of 2013-12-07 on momo

[git revision 9d4f4d00978ceed46c4c30fe41c258716f9e042e - last change Sat Dec 7 20:46]

Configured using:
 `configure --with-ns'

Important settings:
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t

Major mode: Lisp Interaction



Reply sent to Eli Zaretskii <eliz <at> gnu.org>:
You have taken responsibility. (Sat, 14 Dec 2013 19:38:02 GMT) Full text and rfc822 format available.

Notification sent to David Reitter <david.reitter <at> gmail.com>:
bug acknowledged by developer. (Sat, 14 Dec 2013 19:38:03 GMT) Full text and rfc822 format available.

Message #10 received at 16148-done <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: David Reitter <david.reitter <at> gmail.com>
Cc: 16148-done <at> debbugs.gnu.org
Subject: Re: bug#16148: Cursor stuck on line ending w/
 visual-order-cursor	movement - move-point-visually fails.
Date: Sat, 14 Dec 2013 21:37:35 +0200
> From: David Reitter <david.reitter <at> gmail.com>
> Date: Sat, 14 Dec 2013 12:53:51 -0500
> 
> With a certain combination of settings, cursor movement to the left fails at the (right) end of lines:
> 
> Emacs -Q -nw
> 
> [Enter and evaluate the following:]
> 
> 	(whitespace-newline-mode 1)
> 	(global-hl-line-mode 1)
> 	(setq visual-order-cursor-movement t)
> 
> [Then press left-arrow repeatedly.  Cursor will get "stuck" on a line ending.]

Fixed.

> - `hl-line-mode' alone does not suffice - it has to the be `global-hl-line-mode'.

That's because move-point-visually uses 2 separate strategies, and the
problem was only in one of them.  You need to work very hard for
move-point-visually to fall back on the second strategy, but the
combination of the above 2 mode, each one of which is a redisplay
optimizations killer, succeeded in doing just that.

> Second, simpler recipe:
> 
> Emacs -Q -nw
> 
> [Enter and evaluate the following:]
> 
> 	(whitespace-newline-mode 1)
> 
> Place cursor at end of line, then M-: (move-point-visually -1)  RET.
> Nothing happens.

This is the same problem (M-: also forces move-point-visually to use
the 2nd strategy), so it is also fixed.

Thanks.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sun, 12 Jan 2014 12:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 10 years and 127 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.