From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Alex Schroeder Newsgroups: gmane.emacs.devel Subject: Re: compilation-goto-locus, pop-up-windows, same-window-regexps Date: Wed, 26 Mar 2003 23:33:23 +0100 Sender: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Message-ID: <87k7elu5ak.fsf@gnu.org> References: <87vfyjbnhr.fsf@gnu.org> <87d6kqfj72.fsf@gnu.org> <87smtly24a.fsf@gnu.org> <871y0wcxl1.fsf@gnu.org> <87he9r7ygq.fsf@gnu.org> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: main.gmane.org 1048718664 2152 80.91.224.249 (26 Mar 2003 22:44:24 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Wed, 26 Mar 2003 22:44:24 +0000 (UTC) Original-X-From: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Wed Mar 26 23:44:23 2003 Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 18yJd9-0000YY-00 for ; Wed, 26 Mar 2003 23:44:23 +0100 Original-Received: from monty-python.gnu.org ([199.232.76.173]) by quimby.gnus.org with esmtp (Exim 3.12 #1 (Debian)) id 18yJej-0007G8-00 for ; Wed, 26 Mar 2003 23:46:01 +0100 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.10.13) id 18yJYD-0007U7-06 for emacs-devel@quimby.gnus.org; Wed, 26 Mar 2003 17:39:17 -0500 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.10.13) id 18yJXv-0007R8-00 for emacs-devel@gnu.org; Wed, 26 Mar 2003 17:38:59 -0500 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.10.13) id 18yJTQ-00065r-00 for emacs-devel@gnu.org; Wed, 26 Mar 2003 17:34:21 -0500 Original-Received: from isp247n.hispeed.ch ([62.2.95.247] helo=smtp.hispeed.ch) by monty-python.gnu.org with esmtp (TLSv1:DES-CBC3-SHA:168) (Exim 4.10.13) id 18yJSX-0005jS-00 for emacs-devel@gnu.org; Wed, 26 Mar 2003 17:33:26 -0500 Original-Received: from confusibombus.gnu.org (dclient217-162-33-118.hispeed.ch [217.162.33.118])h2QMXNsf017845 for ; Wed, 26 Mar 2003 23:33:23 +0100 Original-To: emacs-devel@gnu.org Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAG1BMVEX///89Pjl6hX25yeD/ 373gtJdgTEW6a14sduMzR7J4AAAAAXRSTlMAQObYZgAAAeJJREFUeNp1lMGSmzAMhvMKolOaa5wB cg3p5gGy8va8xCZn0658LlPg3Bw6PHZlArbZ2XUOJHz+f1mylM3pk7UJX8t/zf4DUOYAlJJnHuyA ARgCIVagNLCsZA0grMkuBrQQ5/aRAtII7GIA+f4TAM11AWYN4OcMntwPiuh+E2I3Q0GUphNNF3Di /UU2DD29UzxB2rZZpat+8iQKVkmRaV7VtJ988BPYttMaUebrU5XQuP0KsTJrkAoHkEH+DnQzmCVf PJiskL3kbq0goW996zR1DLhWqb0RtBniS5ygK2Jy6/lsCl8M57FU1135V6xTOyi8pDYDfx85mF+o h46DXKj7QQsoBdEflC5DvGRKZl4hsp5fToAfOlytEAPOCn6qAIqiUVJ2DJRTBnAuLGd+69Alj/Ia QG8s6dubcgJVBkVJ9I3rOExBpIgURG9aYuWKJesmKE5Edpjy49B5E81Hbsg+7hDxdxKBM1vNV/Vs ksiqtFxA5cD3V4itarKt5sPK51cDIjouWO4rKZE7y8A9gCM0mVaSo5ir2R68FTc194l7XycCxoNX HF23Z7oSBYkdHILVY4yaPDdJ9Xc7enD0Y2mSHMZxvM/AjxIBg/soZnD2fwrcXrBlhXiAZYweQzje +XP6D3vk9qXUjAFlAAAAAElFTkSuQmCC In-Reply-To: ("Robert J. Chassell"'s message of "Wed, 26 Mar 2003 14:01:24 +0000 (UTC)") User-Agent: Gnus/5.090016 (Oort Gnus v0.16) Emacs/21.3.50 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1b5 Precedence: list List-Id: Emacs development discussions. List-Help: List-Post: List-Subscribe: , List-Archive: List-Unsubscribe: , Errors-To: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Xref: main.gmane.org gmane.emacs.devel:12645 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:12645 "Robert J. Chassell" writes: > Good point. But I don't see any simple solution, other than running > different instances of Emacs. But I am often blind to what Emacs can > already do. Does anyone know of a simple and limited solution to the > current problem? Not yet -- specially since RMS pointed out another class of problems for my simple solution: Long messages. Sometimes Emacs uses a buffer to display information about another buffer instead of the echo area -- eg. "You are using an unsafe coding system to save character X... The other window shows this character X" (more or less). Now if you only show one of these buffers, the error message makes no sense without seeing character X in the other buffer, and seeing only character X in a buffer without the message is also useless. A similar, but less serious problem is the idea of a help message when writing bug reports. With a "one-window-at-all-times" setup, you will see either the help text, or the mail buffer, but not both. I must think a bit more about this, since the simple solution seems to have some drawbacks. At first I thought I could solve the problem with appropriate stacking of buffers -- eg. if you first see a help message talking about the bug report, and you hit q and then you see the mail buffer, then it still sort-of makes sense. But the error message about the unsafe coding system is a killer -- just stacking the information is not enough, because in that situation you must answer a question (choose a safe coding system) without having the chance to look at the "next" buffer. Anyway, back to the second part of your message -- what can Emacs already do in this area? I tried to collect some ideas floating around: Note that I used frames to group windows and buffers belonging to a group in earlier days. People like Oliver Scholz have implemented (I don't know the current status) code that modifies buffer-switching functions to only allow buffers "in the same group", and these groups where somehow tied to a frame. That makes frames dedicated to particular tasks easier to use, because you won't get lost in your long list of unrelated buffers when you switch buffers. Other related stuff Emacs already does: special-display-buffer-names creates new frames for particular buffers. same-window-buffer-names controls whether a certain buffer is shown in the current window or in some "other" window (possibly creating new ones). gnus-window-configuration specifies the configuration of buffers to use for a variety of typical situations while reading mail and news. These window configurations replace the current window configuration of a frame, so having a dedicated Gnus frame works. Since I wanted a dedicated Gnus *window*, I attempted to create a gnus-window-configuration setting that always shows only one buffer at all times. "La solution existe!" -- Alex.