GNU bug report logs - #76596
30.1; dired-movement-style does not honor subdir operations

Previous Next

Package: emacs;

Reported by: Charles Choi <kickingvegas <at> gmail.com>

Date: Wed, 26 Feb 2025 20:07:01 UTC

Severity: minor

Found in version 30.1

Fixed in version 30.1.50

Done: Juri Linkov <juri <at> linkov.net>

Bug is archived. No further changes may be made.

Full log


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

From: Drew Adams <drew.adams <at> oracle.com>
To: Charles Choi <kickingvegas <at> gmail.com>, Eli Zaretskii <eliz <at> gnu.org>
Cc: "76596 <at> debbugs.gnu.org" <76596 <at> debbugs.gnu.org>,
 Juri Linkov <juri <at> linkov.net>
Subject: RE: [External] : bug#76596: 30.1; dired-movement-style does not honor
 subdir operations
Date: Tue, 4 Mar 2025 19:38:02 +0000
> It is not clear to me the value of having an option to prevent navigating
> to subdirs to reproduce the behavior shipped in 30.1. Why enforce two
> separate commands of navigation based on type? To me, subdir navigation is
> a subset of line navigation where line navigation moves the point to any
> non-blank line, and subdir navigation only applies to subdirs.
> 
> If it is insisted that enforcing separate commands for type navigation
> (file/directory, subdir) be supported, then please do _not_ make this
> option the default for dired-movement-style. I still consider such an
> option to be a user interface mistake.

+1, for not preventing navigation to subdirs.

I even see no particular value in skipping
blank lines!

The only value-added that I can see by the
"movement-style" feature is the `cycle' value
(which is the wrong name, BTW - should be
`wrap', as in "wrap around").

And wrapping around is something I added to 
dired+.el (and suggested for vanilla Emacs)
as an option (`diredp-wrap-around-flag') back
in 2013.  And it defaults to `t', because you
usually do want to wrap around.

And in Dired+ that option also affects other
movements:

* to the (ARGth) next/prev dir line (`>', `<')
* to the (ARGth) next/prev inserted listing
  (`C-M-n', `C-M-p')

Why the option is called "movement style" is
unclear.  And why does the Boolean choice of
skipping blank lines not apply for cycling?

`bounded': skip blank lines and don't wrap
`cycle'  : skip blank lines and wrap
nil      : don't skip blank lines and don't wrap

What's missing is "don't skip but wrap".
And that's maybe the most useful possibility.
(It's the default behavior for Dired+.)

If you really wanted to provide an option to
skip blank lines, that should have been a
Boolean, and separate from another Boolean
option to wrap around (misnomer "cycle").

Please tell me why cycling doesn't logically
apply to `C-M-n', `C-M-p', `>', and `<'.

This bug report was last modified 58 days ago.

Previous Next


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