GNU bug report logs - #41097
28.0.50; (dired-toggle-marks) not working after copy

Previous Next

Package: emacs;

Reported by: Jean Louis <bugs <at> gnu.support>

Date: Tue, 5 May 2020 15:35:01 UTC

Severity: minor

Found in version 28.0.50

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

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Drew Adams <drew.adams <at> oracle.com>
To: Eli Zaretskii <eliz <at> gnu.org>, Drew Adams <drew.adams <at> oracle.com>
Cc: michael_heerdegen <at> web.de, tomasn <at> posteo.net, 41097 <at> debbugs.gnu.org, arthur.miller <at> live.com, bugs <at> gnu.support
Subject: bug#41097: 28.0.50; (dired-toggle-marks) not working after copy
Date: Sun, 10 May 2020 12:18:18 -0700 (PDT)
> > Please reconsider.
> 
> Done.
> 
> > Can you point to any other occurrence of referring
> > to some mark other than `D' as a "flag" - anywhere
> > in the Dired doc or code?  All marks, including
> > `D', are marks.  Only `D' is called "flag".
> 
> "Flag" is just a word.

So is "mark".  What is your point?  Only `D' has
been called a flag by Emacs, until now.

Dired actions affect marks differently, depending
on the mark.  There are 3 kinds of actions - 3
groups of marks:

1. Actions that affect only mark `*'.
2. Actions that affect only mark `D'.
3. Actions that affect all marks (including
   `*' and `D').

By "affect" I mean either act on a file line that
has such a mark or add such a mark to a file line.

How to refer to these actions, these groups
of marks?  Up until your change:

1. Emacs has always referred to #1 as "mark",
   not making specific mention that only `*'
   is affected.  This is the most common kind of
   action and the most common kind of mark used.

2. Emacs has always, everywhere, referred ONLY
   to #2 as "flag", including the specific action
   of UNflagging as "unflag".  That said, see #3.

3. Emacs has always, for actions that affect ALL
   marks or ANY mark (including `D' and `*'),
   referred to #3 as "mark".

Could Emacs have spoken differently?
Yes, here's a possibility (not taken by Emacs):

1. Refer ONLY to #1 (`*') as "mark".

2. Refer to #2 as "flag `D'", "flag for deletion".

3. Refer to #3 as "marks and flags" and "mark
   or flag", and point out specifically that `C',
   `D', etc. are "flags", whereas `*' is the only
   "mark".

Either of those approaches, the one Emacs has
used or the other, is doable, reasonable.

But what you've done is instead inconsistent.
In a single doc string you've changed the
terminology, to refer to `C' as a "flag".  No
such change for other non-`*' marks.

That means that doc for #3 is not only wrong
but self-contradictory, as it still talks about
the existence of multiple kinds of "mark" -
different characters.

You say you've reconsidered.  I'd ask that you
reconsider again.  And please elaborate on your
"'Flag' is just a word" response to my question:

  Can you point to any other occurrence of
  referring to some mark other than `D' as a
  "flag" - anywhere in the Dired doc or code?  

That's not a rhetorical question.  I know of
no such occurrence.  Do you?  I think what I've
said above is correct, regarding #1, #2, #3.

Words matter.  I gave a reason why I think
Emacs chose to use "flag" for `D' - and only
for `D': to flag something is to draw special
attention to it.

Your change works against that.  If `C' is now
referred to as a "flag" then `D' isn't special
in that regard. Users can conclude that all
marks except `*' are now "flags".

Note, BTW, that mark `R' is handled the way
mark `C' is handled.  It comes from rename
operations.  Likewise, `H' (new hard links)
and `Y' (new soft links).

And each of those cases (copy, rename, hard
link, soft link) has a user option that you
can set to `t' to cause the target to be
marked not with the default mark (`C' etc.)
but with whatever mark the source file had.

And the doc for each of those options talks
about "marks" and "marking", not "flags" and
"flagging".  The doc for `dired-del-marker',
on the other hand, says "flag", exceptionally.




This bug report was last modified 5 years and 86 days ago.

Previous Next


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