GNU bug report logs - #24837
26.0.50; term.el: In char mode, displayed and executed commands can differ

Previous Next

Package: emacs;

Reported by: Philipp Stephani <p.stephani2 <at> gmail.com>

Date: Mon, 31 Oct 2016 14:11:02 UTC

Severity: important

Merged with 21609

Found in versions 24.5, 26.0.50

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

Bug is archived. No further changes may be made.

Full log


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

From: Phil Sainty <psainty <at> orcon.net.nz>
To: Philipp Stephani <p.stephani2 <at> gmail.com>, Eli Zaretskii <eliz <at> gnu.org>
Cc: 24837 <at> debbugs.gnu.org, 21609 <at> debbugs.gnu.org,
 bug-gnu-emacs <bug-gnu-emacs-bounces+psainty=orcon.net.nz <at> gnu.org>
Subject: Re: bug#24837: 26.0.50; term.el: In char mode, displayed and
 executed commands can differ
Date: Mon, 25 Sep 2017 16:09:22 +1300
On 2017-09-25 13:48, Phil Sainty wrote:
> So keyboard events cannot leave point in the wrong position; and while
> mouse events can do so, as soon as the keyboard is involved again we
> jump to where we're supposed to be.

Thinking on this further, it might be even better to use 
pre-command-hook
to establish whether the pre-command position of point is equal to the
process mark, and then act conditionally on that in post-command-hook,
so that if the pre-command point did not already match the process mark,
we do *not* forcibly move it to the process mark afterwards.

The intention being that in term-char-mode:

1. Unless mouse activity takes place, a command cannot leave point in
   an inconsistent position.

2. The user *can* still use the mouse in char mode (e.g. to move point
   and/or select a region).

3. Once the user has used the mouse to move point, they may continue
   to invoke arbitrary commands without it being forced back to the
   process mark (so exchange-point-and-mark would do what they expected,
   for example).  The buffer will still be read-only of course.

4. Upon process output, point would move back to the process mark as
   normal.  When this happens (or if the user manually moves point to
   that position) the user would need to use the mouse once more to
   move point elsewhere.

Obviously they can switch to term-line-mode at any time and do anything
to the buffer, but the above would give some ability to the mouse and
certain keybindings in char mode as well.


-Phil





This bug report was last modified 7 years and 267 days ago.

Previous Next


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