unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Drew Adams" <drew.adams@oracle.com>
Subject: RE: Buffer listing in multiple frames/ttys
Date: Tue, 29 Nov 2005 16:20:28 -0800	[thread overview]
Message-ID: <DNEMKBNJBGPAOPIJOOICKEHNCPAA.drew.adams@oracle.com> (raw)
In-Reply-To: <200511292335.jATNZY316413@raven.dms.auburn.edu>

      Lorentey Karoly wrote:
       I agree that there is no point in having frame-local buffer lists
       when pop-up-frames is set to t, so I propose in that case we
       continue to use the global buffer-list, as before.

    `pop-up-frames' is mainly a way of preventing help buffers and such
    from messing up window configurations.

I don't really agree, but I'm not sure my disagreement is important here. My
guess (why? I don't know) is that most people who set `pop-up-frames' = t
are trying to get a one-buffer-per-frame behavior for Emacs. That is not as
easy as simply setting that variable, however, so such behavior cannot be
said to be the purpose of that variable, admittedly.

    `C-x b' still gives buffers in
    the selected frame.  `M-x buffer-menu' still gives the Buffer Menu in
    the selected frame.  ...

    The frame local buffer list only makes no sense if you not only set
    pop-up-frames to t, but, much more importantly, always use C-x 5 b
    instead of C-x b, as Drew apparently does.  (I believe that he must
    have rebound C-x b to run `C-x 5 b')  But that is highly personal usage.

I use C-x 4 b (4 works like 5, if pop-up-frames is t) when I don't want to
replace the current buffer - just as you might use it to open a buffer in
another window: no difference. I doubt that I work much differently from
others - I just use frames in place of windows.

The point is not that I don't reuse a frame for a different buffer - it is
that I have only one buffer per frame (most of the time) - that is, I use
frames like most people use Emacs windows. If you keep that analogy in mind,
you'll understand why this change makes little sense for my use case.

Whenever I don't bother to create a new frame (e.g. I use `C-x d' instead of
`C-x 4 d'), I don't _care_ about what was in the frame before (I use `C-x
C-v' too). In that case (as in all other cases), I don't care about the
frame-local buffer list - I don't want to see it or have its order taken
into account anywhere.

In short, I use frames pretty much like most people use Emacs windows. You
wouldn't find a window-local buffer list useful, would you? You wouldn't
want the Buffer Menu to be ordered in any way based on that, would you?
That's the point.

(BTW - In order to make frames behave well, I also make special buffers
(*...*) use dedicated windows, and redefine `switch-to-buffer' to use a
different window if the current window is dedicated, and jump through a few
other hoops.)

    On the other hand, if you do not use separate frames systematically
    for separate themes, then usually the least important buffers are the
    _globally_ least recent ones.  So in that case you might prefer the
    old behavior, regardless of the value of `pop-up-frames'.

       So, should I apply this patch or not? :-)

    For the reasons explained above, I would prefer a user option, with
    the new behavior as default.  In other words, I would prefer the
    following patch, which I could install if we decide to do that:

    + (defcustom Buffer-menu-use-frame-buffer-list t
    +   "If non-nil, the Buffer Menu uses the selected frame's buffer list.
    + If nil, it uses the global buffer list.  This variable matters if
    + the Buffer Menu is sorted by visited order, as it is by default."

Yes, I, at least, would prefer having the option. Thanks.

I still believe that most people who use pop-up-frames = t will want to set
this option to nil (so, they would prefer that that behavior be the default
for non-nil pop-up-frames), but I don't mind setting the option to get the
old behavior.

  parent reply	other threads:[~2005-11-30  0:20 UTC|newest]

Thread overview: 61+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-11-24 20:25 Buffer listing in multiple frames/ttys Len Trigg
2005-11-24 21:44 ` Károly Lőrentey
2005-11-28 14:37   ` Lőrentey Károly
2005-11-28 17:16     ` Drew Adams
2005-11-28 18:24       ` Lőrentey Károly
2005-11-28 19:23         ` Drew Adams
2005-11-28 20:48           ` Lőrentey Károly
2005-11-28 23:12             ` Drew Adams
2005-11-29  0:15               ` Luc Teirlinck
2005-11-29  0:29                 ` Drew Adams
2005-11-29 10:45               ` Lőrentey Károly
2005-11-29 15:36                 ` Drew Adams
2005-11-29 18:43                   ` Luc Teirlinck
2005-11-29 19:24                     ` Drew Adams
2005-11-30 13:21                   ` Lőrentey Károly
2005-11-29 18:12                 ` Luc Teirlinck
2005-11-29 23:35                 ` Luc Teirlinck
2005-11-29 23:55                   ` Chong Yidong
2005-11-29 23:57                     ` Chong Yidong
2005-11-30  0:20                   ` Drew Adams [this message]
2005-12-02 21:09       ` Juri Linkov
2005-12-03 15:58         ` Richard M. Stallman
2005-12-03 17:03         ` Lőrentey Károly
2005-12-03 17:46           ` Juri Linkov
2005-12-04 21:18             ` Richard M. Stallman
2005-12-04 21:56               ` Juri Linkov
2005-12-05  4:33                 ` Eli Zaretskii
2005-12-05  6:03                   ` Juri Linkov
2005-12-05 16:38                 ` Richard M. Stallman
2005-12-05 14:44             ` Károly Lőrentey
2005-12-05 21:32               ` Juri Linkov
2005-12-06 16:42                 ` Richard M. Stallman
2005-12-06  1:43               ` Richard M. Stallman
2005-12-06 12:44                 ` Károly Lőrentey
2005-12-07  0:52                   ` Juri Linkov
2005-12-07 14:51                     ` Károly Lőrentey
2005-12-07 21:29                       ` Juri Linkov
2005-12-08  7:48                       ` Juri Linkov
2005-12-08 14:26                         ` Lőrentey Károly
2005-12-08 19:29                       ` Richard M. Stallman
2005-12-08 21:56                         ` Juri Linkov
2005-12-09 15:04                           ` Richard M. Stallman
2005-12-09 20:04                             ` Lőrentey Károly
2005-12-09 23:54                               ` Juri Linkov
2005-12-10 16:18                                 ` Richard M. Stallman
2005-12-11  0:54                                   ` Juri Linkov
2005-12-11 16:49                                     ` Richard M. Stallman
2005-12-11 16:57                                   ` Károly Lőrentey
2005-12-11 16:53                             ` Károly Lőrentey
2005-12-11 22:57                               ` Richard M. Stallman
2005-12-12 12:56                                 ` Károly Lőrentey
2005-12-12  7:43                               ` Juri Linkov
2005-12-07 17:07                   ` Richard M. Stallman
2005-12-07 17:15                     ` Károly Lőrentey
2005-12-08  4:53                       ` Richard M. Stallman
2005-12-06 16:20               ` Drew Adams
2005-12-06 18:09                 ` Lőrentey Károly
2005-12-07 16:54                   ` Drew Adams
2005-12-07 21:29                     ` Juri Linkov
2005-12-08  0:03                       ` Drew Adams
     [not found] <lorentey.g.e.devel.87hd9uff0k.elte@walrus.fnord.hu>
2005-11-30 16:33 ` Drew Adams

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

  List information: https://www.gnu.org/software/emacs/

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

  git send-email \
    --in-reply-to=DNEMKBNJBGPAOPIJOOICKEHNCPAA.drew.adams@oracle.com \
    --to=drew.adams@oracle.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 public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).