all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Stefan Monnier <monnier@iro.umontreal.ca>
To: Boruch Baum <boruch_baum@gmx.com>
Cc: 44023@debbugs.gnu.org
Subject: bug#44023: dired-allow-duplicate-buffers
Date: Fri, 06 Nov 2020 09:29:53 -0500	[thread overview]
Message-ID: <jwvh7q2ftv2.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <20201106100119.se2sneqeh4u7iv6f@E15-2016.optimum.net> (Boruch Baum's message of "Fri, 6 Nov 2020 05:01:19 -0500")

>> > In going through the existing dired code, it seems that some functions
>> > presume that multiple buffers can be visiting the same directory. See:
>> Because of the functionality of Dired (which allows visiting several
>> directories (and subdirectories)) in a single buffer, the code basically
>> "has to" handle that case, indeed (tho I'd be surprised if there aren't
>> improvements to be made in that regard).
> The case you mention sounds like the converse: multiple directories in a
> single buffer, versus what I'm addressing which is multiple buffers for
> a single directory.

Yes, but:
start with a dired in ~/foo and another in ~/foo/bar and then in ~/foo
ask dired to add the contents of ~/foo/bar to it: pronto you have
2 dired buffers that both show the content of ~/foo/bar.  So because of
that kind of scenario, dired has to handle some kind of "two dired
buffers both showing the same directory" (tho it's not exactly the same
as your scenario, admittedly).

>> E.g. I suspect that diredc wants/needs this feature, but it's not
>> diredc's job to set user options, so for diredc it would probably make
>> more sense to pass that as an argument.
>> WDYT?
>
> I prefer the defcustom route because I like giving a user choices (it's
> also more emacs-y).

I don't see this as a question of "choice vs no-choice" but a question
is: should this be decided globally over the whole Emacs session, or
should it be decided one  a case-by-case basis (in both cases the
decision should be under the user's control, either by setting
a variable, or by calling a different command, or by using the same
command bu tin a different context, ...).

> Less subjectively, adding an argument creates a mess
> because the modified function is a generic internal function

Which is why I then suggested a separate function/command (which will
require a bit of refactoring to share the common code, of course, but
that's an implementation detail).


        Stefan






  reply	other threads:[~2020-11-06 14:29 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-15 19:22 bug#44023: dired-allow-duplicate-buffers Boruch Baum
2020-10-16  5:32 ` Lars Ingebrigtsen
2020-10-16  6:46   ` Boruch Baum
2020-10-16 16:25     ` Lars Ingebrigtsen
2020-10-18  5:45       ` Boruch Baum
2020-10-19  8:11         ` Lars Ingebrigtsen
2020-10-19  8:38           ` Boruch Baum
2020-11-05 15:38 ` Stefan Monnier
2020-11-05 16:06   ` Stefan Monnier
2020-11-06 10:01   ` Boruch Baum
2020-11-06 14:29     ` Stefan Monnier [this message]
2020-11-08  9:51       ` Boruch Baum
2020-11-08 13:50         ` Stefan Monnier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=jwvh7q2ftv2.fsf-monnier+emacs@gnu.org \
    --to=monnier@iro.umontreal.ca \
    --cc=44023@debbugs.gnu.org \
    --cc=boruch_baum@gmx.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.