From: Stefan Monnier <monnier@iro.umontreal.ca>
To: martin rudalics <rudalics@gmx.at>
Cc: emacs-devel@gnu.org
Subject: Re: window-size constraints
Date: Sat, 14 Jun 2008 22:01:08 -0400 [thread overview]
Message-ID: <jwvd4mj8nua.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <485440FA.4040300@gmx.at> (martin rudalics's message of "Sun, 15 Jun 2008 00:06:50 +0200")
>> I think we should go in the direction of "constraints", which would take
>> the form of Elisp functions. Every configuration change would
>> correspond to adding&removing constraints, and then try and solve the
>> resulting CSP. Constraints would come with priorities so that in the
>> case the CSP has no solution, we can choose which constraint(s)
>> to break, or alternatively, the satisfaction of a constraint would not be
>> boolean, so the goal would be to try and maximize the satisfaction.
> We'd still have to decide whether and how to honor buffer-local values
> of variables like `window-min-height'
Of course, we have to honor it. It's already defined as buffer-local.
It should be easy/trivial to support. At least window-area-factor was
trivial and I see no reason why window-min-height should be any
more difficult.
> or `split-height-threshold'.
I'm not sure I'd want to include display-buffer in this system, tho
I guess it might make sense.
> When the window configuration changes Emacs often tries to preserve
> proportionally the size of non-fixed size windows as faithfully as
> possible. How would `balance-windows-area' help here?
I'm not referring to the functionality it provides, but to the way it
does it, i.e. to its code. But it's really not that important: just let
the C code do its thing, hoping it won't mess up majorly (i.e. it won't
delete windows that don't absolutely need to be deleted), and then do
the actual size-choice in Elisp by trying to resolve the CSP.
> Doesn't it try to give all windows the same size?
Yes, except for the window-area-factor detail, but again, this
isn't relevant, really.
Stefan
next prev parent reply other threads:[~2008-06-15 2:01 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <873anhkn4m.fsf@escher.local.home>
[not found] ` <4853920E.9020106@gmx.at>
2008-06-14 15:31 ` window-size constraints (was: bug#410: 23.0.60; display-buffer regression) Stefan Monnier
2008-06-14 22:06 ` window-size constraints martin rudalics
2008-06-15 2:01 ` Stefan Monnier [this message]
2008-06-15 8:37 ` martin rudalics
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=jwvd4mj8nua.fsf-monnier+emacs@gnu.org \
--to=monnier@iro.umontreal.ca \
--cc=emacs-devel@gnu.org \
--cc=rudalics@gmx.at \
/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).