all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: martin rudalics <rudalics@gmx.at>
To: grischka <grishka@gmx.de>
Cc: emacs-devel@gnu.org
Subject: Re: Window configurations
Date: Wed, 12 May 2010 15:03:59 +0200	[thread overview]
Message-ID: <4BEAA73F.4060608@gmx.at> (raw)
In-Reply-To: <4BEA8D2D.4090109@gmx.de>

 >> ... And, obviously, stacks have the usual annoying attitude to
 >> forget about their tops, so sooner or later someone will come up and ask
 >> for a ring or eventually a buffer history tree for each window and some
 >> way to navigate it.
 >
 > You're already lost if you plan to expose details of your design to users
 > or packages.  If people want rings or history, they can still implement
 > it on top of your design as a whole.  It is then their responsibility to
 > make their feature conclusive to yours.

There's hardly anything to implement "on top" of this.  The primitives
are `set-window-buffer' and `kill-buffer' so any implementation on top
of this would have to hook into `window-configuration-change-hook' and
`kill-buffer-hook'.

 > One mistake is to cater for windows on the same level of generality as you
 > obviously do for low level lisp.  Of course you want functions "cons" etc.
 > to allow generation of arbitrarily complex lisp structures, but it cannot
 > be the point of "split-window" to generate arbitrarily complex
 > window-trees,

I'm not sure whether I get your point.  But windows are first class
citizens in the Elisp world and `split-window' must be allowed to create
arbitrarily complex window trees on an arbitrarily complex machine.

 > (and anyway the result of some such is not a "window-configuration" but at
 > most a "window-state").

In my book a "window configuration" is "the state of all windows".

 > The other mistake is _not_ to cater for windows on the same level of
 > _reliability_ as you obviously do for low level lisp.  "Cons" doesn't work
 > "intuitively" in the sense of "heuristically", and one has to accept that
 > there is no other "intuitively right window" to display some buffer except
 > the exactly one defined location where the user wants to see it.

The question which buffer I want to display must be solved heuristically
because it's too complex to analyze the intentions of each and every
Emacs user (and possibly provide the necessary customizations) in Elisp.
The heuristics should guess the "intuitively right window" in a way
which can be roughly measured by the number of postings criticizing its
implementation.

 > And that is actually what "window-configuration" can only mean:  A way to
 > define windows for particular content (aka. buffers) _before_ the window
 > exists physically.

IIUC that's what packages like ECB do.  And ECB leaves it to Emacs and
its users to modify the configuration/state of the edit area.

 >  From then on it is easy, you just need to tell "display-buffer" to use
 > that
 > window rsp. to generate it if it doesn't yet exist.

martin



  reply	other threads:[~2010-05-12 13:03 UTC|newest]

Thread overview: 163+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-11 13:54 Window configurations grischka
2010-05-12  9:28 ` martin rudalics
2010-05-12 11:12   ` grischka
2010-05-12 13:03     ` martin rudalics [this message]
2010-05-12 18:33       ` grischka
2010-05-13 10:22         ` martin rudalics
2010-05-13 11:40           ` grischka
2010-05-13 13:53             ` martin rudalics
2010-05-13 17:13               ` grischka
2010-05-13 22:57                 ` Juri Linkov
2010-05-14  6:58                 ` martin rudalics
2010-05-14 10:42                   ` grischka
2010-05-14 11:45                     ` martin rudalics
2010-05-14 13:32                       ` grischka
2010-05-13 22:54             ` Juri Linkov
2010-05-14 11:12               ` grischka
2010-05-14 11:45                 ` martin rudalics
2010-05-16 22:49               ` Juri Linkov
2010-05-17  9:06                 ` martin rudalics
2010-05-17 22:48                   ` Juri Linkov
2010-05-13 22:48   ` Juri Linkov
2010-05-14  7:00     ` martin rudalics
  -- strict thread matches above, loose matches on Subject: below --
2010-05-06 11:18 grischka
2010-05-05 13:31 grischka
2010-05-05 18:10 ` Juri Linkov
2010-05-05 19:47   ` grischka
2010-05-05 20:07 ` Drew Adams
2010-04-01 16:52 Gtk tabs in emacs, new branch Angelo Graziosi
2010-04-05  8:50 ` Angelo Graziosi
2010-04-10 12:44   ` Jan Djärv
2010-04-10 17:34     ` Angelo Graziosi
2010-04-10 18:03       ` Jan Djärv
2010-04-10 22:09         ` Angelo Graziosi
2010-04-11  5:45           ` Jan Djärv
2010-04-11  8:16             ` Angelo Graziosi
2010-04-11 10:52               ` Jan Djärv
2010-04-11 17:28                 ` Angelo Graziosi
2010-04-21  8:55                   ` Juri Linkov
2010-04-21 15:45                     ` Juri Linkov
2010-04-23 16:53                       ` Drew Adams
2010-04-23 18:02                         ` Juri Linkov
2010-04-23 18:28                           ` Drew Adams
2010-04-24  9:17                             ` Juri Linkov
2010-04-24 14:41                               ` Drew Adams
2010-04-24 18:49                                 ` Juri Linkov
2010-04-24 19:24                                   ` Drew Adams
2010-04-25  5:36                                     ` Juri Linkov
2010-04-25  9:15                                       ` martin rudalics
2010-04-25 18:33                                         ` Window configurations (was: Gtk tabs in emacs, new branch) Juri Linkov
2010-04-26 16:16                                           ` Window configurations martin rudalics
2010-04-27  8:54                                             ` Juri Linkov
2010-04-27 12:54                                               ` martin rudalics
2010-04-27 18:03                                                 ` Juri Linkov
2010-04-28  7:12                                                   ` martin rudalics
2010-04-28  8:27                                                     ` Juri Linkov
2010-04-27 19:55                                             ` Davis Herring
2010-04-28  7:12                                               ` martin rudalics
2010-04-28 14:50                                                 ` Stefan Monnier
2010-04-28  8:35                                               ` Juri Linkov
2010-04-28 14:15                                                 ` Davis Herring
2010-05-07 18:14                                                   ` Juri Linkov
2010-04-30  3:19                                           ` Window configurations (was: Gtk tabs in emacs, new branch) Ken Hori
2010-04-30 20:33                                             ` Window configurations Stefan Monnier
2010-05-02 20:31                                               ` Juri Linkov
2010-05-02 23:34                                                 ` Drew Adams
2010-05-03  0:50                                                   ` Stefan Monnier
2010-05-03  0:57                                                     ` Juri Linkov
2010-05-03  2:50                                                       ` Stefan Monnier
2010-05-04 16:09                                                         ` Juri Linkov
2010-05-05  6:41                                                           ` Stephen J. Turnbull
2010-05-05 13:22                                                             ` Stefan Monnier
2010-05-05 14:35                                                               ` Stephen J. Turnbull
2010-05-05 21:59                                                           ` Juri Linkov
2010-05-02 20:28                                             ` Juri Linkov
2010-05-03  3:31                                               ` Ken Hori
2010-05-04 16:12                                                 ` Juri Linkov
2010-05-05  9:19                                                   ` martin rudalics
2010-05-05 18:05                                                     ` Juri Linkov
2010-05-06  8:21                                                       ` martin rudalics
2010-05-06 20:47                                                         ` Juri Linkov
2010-05-10 19:16                                                         ` Juri Linkov
2010-05-11  7:01                                                           ` martin rudalics
2010-05-11 16:45                                                             ` Juri Linkov
2010-05-12  9:29                                                               ` martin rudalics
2010-05-13 22:46                                                                 ` Juri Linkov
2010-05-14  6:59                                                                   ` martin rudalics
2010-05-16 22:51                                                                     ` Juri Linkov
2010-05-17  9:06                                                                       ` martin rudalics
2010-05-17 22:54                                                                         ` Juri Linkov
2010-05-18 12:07                                                                           ` martin rudalics
2010-05-31 17:28                                                                       ` martin rudalics
2010-05-31 18:39                                                                         ` Stefan Monnier
2010-05-31 19:12                                                                           ` Lennart Borgman
2010-05-31 20:23                                                                             ` Juri Linkov
2010-06-01  9:24                                                                             ` martin rudalics
2010-05-31 20:19                                                                           ` Juri Linkov
2010-06-01  3:13                                                                             ` Stefan Monnier
2010-06-01  9:25                                                                               ` martin rudalics
2010-06-01 12:58                                                                                 ` Stefan Monnier
2010-06-01  9:24                                                                           ` martin rudalics
2010-06-01 13:08                                                                             ` Stefan Monnier
2010-06-01 14:02                                                                               ` Lennart Borgman
2010-06-01 16:04                                                                               ` martin rudalics
2010-06-01 19:20                                                                                 ` Stefan Monnier
2010-06-02 12:59                                                                                   ` martin rudalics
2010-06-02 14:08                                                                                     ` Stefan Monnier
2010-06-03  8:55                                                                                       ` martin rudalics
2010-06-01 19:54                                                                                 ` Juri Linkov
2010-06-02 13:00                                                                                   ` martin rudalics
2010-06-02 19:46                                                                                     ` Juri Linkov
2010-06-03  8:55                                                                                       ` martin rudalics
2010-06-03 18:55                                                                                         ` Juri Linkov
2010-06-14 17:05                                                                                   ` martin rudalics
2010-06-14 21:54                                                                                     ` Juri Linkov
2010-06-15  7:08                                                                                       ` martin rudalics
2010-06-15 21:31                                                                                         ` Juri Linkov
2010-06-16 17:25                                                                                           ` martin rudalics
2010-06-16 20:51                                                                                             ` Juri Linkov
2010-06-17  7:58                                                                                               ` martin rudalics
2010-06-17  8:42                                                                                                 ` Juri Linkov
2010-06-17 10:20                                                                                                   ` martin rudalics
2010-06-17 20:38                                                                                                     ` Juri Linkov
2010-06-17 22:55                                                                                                       ` Lennart Borgman
2010-06-18  6:34                                                                                                       ` martin rudalics
2010-06-18  8:28                                                                                                         ` Juri Linkov
2010-06-18  9:04                                                                                                           ` martin rudalics
2010-06-19  8:50                                                                                                             ` Juri Linkov
2010-06-19 13:47                                                                                                               ` martin rudalics
2010-06-19 14:12                                                                                                                 ` Juri Linkov
2010-06-19 18:56                                                                                                                   ` martin rudalics
2010-06-01 19:51                                                                             ` Juri Linkov
2010-06-02 13:00                                                                               ` martin rudalics
2010-06-02 19:49                                                                                 ` Juri Linkov
2010-06-03  8:57                                                                                   ` martin rudalics
2010-06-03 14:22                                                                                     ` Stefan Monnier
2010-06-03 15:42                                                                                       ` martin rudalics
2010-06-04 13:11                                                                                         ` Stefan Monnier
2010-06-04 14:07                                                                                           ` martin rudalics
2010-06-04 16:59                                                                                             ` Juri Linkov
2010-06-05 12:49                                                                                               ` martin rudalics
2010-06-04 10:36                                                                                       ` Richard Stallman
2010-06-04 14:06                                                                                         ` martin rudalics
2010-06-03 18:54                                                                                     ` Juri Linkov
2010-06-04  8:11                                                                                       ` martin rudalics
2010-06-04 16:57                                                                                         ` Juri Linkov
2010-06-05 12:49                                                                                           ` martin rudalics
2010-06-05 19:47                                                                                             ` Juri Linkov
2010-06-06 13:21                                                                                               ` Stefan Monnier
2010-06-07 18:31                                                                                                 ` Juri Linkov
2010-06-03 18:52                                                                             ` Juri Linkov
2010-06-04  8:11                                                                               ` martin rudalics
2010-06-04 17:09                                                                                 ` Juri Linkov
2010-06-05 12:49                                                                                   ` martin rudalics
2010-06-05 19:49                                                                                     ` Juri Linkov
2010-06-05 21:58                                                                                       ` Stefan Monnier
2010-06-07 18:30                                                                                         ` Juri Linkov
2010-06-06 10:38                                                                                       ` martin rudalics
2010-06-07  1:12                                                                                         ` Stefan Monnier
2010-06-07 13:40                                                                                           ` martin rudalics
2010-06-07 15:36                                                                                             ` Stefan Monnier
2010-06-07 17:38                                                                                               ` Lennart Borgman
2010-06-08 13:06                                                                                               ` martin rudalics
2010-06-08 20:19                                                                                                 ` Stefan Monnier
2010-06-11 13:20                                                                                                   ` martin rudalics
2010-06-11 13:52                                                                                                     ` Stefan Monnier
2010-06-11 17:12                                                                                                       ` martin rudalics
2010-05-05 18:19                                                     ` Stefan Monnier
2010-05-06  8:22                                                       ` martin rudalics
2010-05-06 13:04                                                         ` Stefan Monnier
2010-05-06 14:59                                                           ` martin rudalics
2010-05-06 16:17                                                             ` Stefan Monnier
2010-05-08  3:09                                                     ` Kevin Rodgers
2010-05-08 13:54                                                       ` martin rudalics
2010-05-08 15:42                                                         ` Lennart Borgman
2010-05-09 14:01                                                           ` martin rudalics
2010-05-09 14:21                                                             ` Lennart Borgman
2010-05-09 15:01                                                               ` martin rudalics
2010-06-29  9:01                                           ` martin rudalics
2010-06-29  9:23                                             ` Juri Linkov
2010-06-29 10:01                                               ` martin rudalics
2010-06-29 10:37                                                 ` Juanma Barranquero
2010-06-29 12:16                                                   ` martin rudalics
2010-06-29 20:14                                                     ` Juanma Barranquero
2010-06-29 20:01                                             ` Juri Linkov
2010-06-30  6:35                                               ` martin rudalics
2010-06-30  8:12                                                 ` Juri Linkov

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=4BEAA73F.4060608@gmx.at \
    --to=rudalics@gmx.at \
    --cc=emacs-devel@gnu.org \
    --cc=grishka@gmx.de \
    /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.