GNU bug report logs - #32343
27.0.50; Todo mode bugs involving done items separator

Previous Next

Package: emacs;

Reported by: Stephen Berman <stephen.berman <at> gmx.net>

Date: Wed, 1 Aug 2018 12:31:02 UTC

Severity: normal

Found in version 27.0.50

Done: Stephen Berman <stephen.berman <at> gmx.net>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Stephen Berman <stephen.berman <at> gmx.net>
To: 32343 <at> debbugs.gnu.org
Subject: bug#32343: 27.0.50; Todo mode bugs involving done items separator
Date: Wed, 01 Aug 2018 14:30:00 +0200
In todo-mode the done items separator is the divider (displayed as a
double line by default) between the todo and done items sections of each
todo category; it is not reachable by todo-mode navigation commands, but
it is reachable e.g. by C-n and C-p.  The current code does not take
this possibility into account, and when certain todo-mode commands are
invoked with point on the separator, this can lead to the following
unexpected results, errors and even file corruption:

- When point is at BOL of done items separator, typing `i h' inserts the
  new item as the penultimate in the category.
- When point is on EOL of done items separator, typing `i h' inserts the
  new item as the first in the category.
- When point is at BOL or EOL of done items separator, typing `i p'
  makes a copy of the last todo item.
- When point is on done items separator, typing `e' allows editing the
  final non-done item.
- When point is at BOL or EOL of done items separator, typing `p' moves
  to the second to last todo item.
- When point is at BOL or EOL of done items separator, typing `*' marks
  or unmarks the last todo item.
- When point is at BOL of done items separator, typing `H' (to enable
  but not to disable item highlighting) or `m', `k', `d', `r' or `#'
  raises the error "Invalid search bound (wrong side of point)" in
  todo-item-end; `d', `r' and `#' also move point to EOL.
- When point is at EOL of done items separator, typing `m' or `k'
  highlights the last todo item, the space below it and the done items
  separator; `d' deletes the last todo item (but the categories sexp
  show one less todo and one more done item) as well as the done items
  separator and raises the error "Category %s is missing
  todo-category-done string" in todo-category-select; `r' raises and `#'
  reprioritizes last item but both delete done items separator.
- When item highlighting is enabled and the done items section is
  visible, then while repeating C-n or the down arrow, the item
  highlighting stops as soon as point moves to the line displaying the
  done items separator: Error in post-command-hook (hl-line-highlight):
  (error "Invalid search bound (wrong side of point)"); and 'H' must be
  pressed twice to restore item highlighting.

I have fixes for these bugs and will commit them and tests to master;
this bug report is for reference in the commit message.

In GNU Emacs 27.0.50 (build 10, x86_64-pc-linux-gnu, GTK+ Version 3.22.28)
 of 2018-08-01 built on rosalinde
Repository revision: cabe9e5126bfed05643d595589031cce8a404255
Windowing system distributor 'The X.Org Foundation', version 11.0.11906000
System Description: Linux From Scratch




This bug report was last modified 6 years and 289 days ago.

Previous Next


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