all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: martin rudalics <rudalics@gmx.at>
To: Eli Zaretskii <eliz@gnu.org>,  Joost Kremers <joostkremers@fastmail.fm>
Cc: emacs-devel@gnu.org
Subject: Re: Better handling of window margins
Date: Wed, 02 Dec 2015 18:43:47 +0100	[thread overview]
Message-ID: <565F2DD3.9020400@gmx.at> (raw)
In-Reply-To: <83k2oxj7d6.fsf@gnu.org>

 > For the first issue, IMO it isn't enough to specify just one value,
 > the required margin width.  You need also to specify the width of the
 > stuff, if any, that is displayed in the margin.  (This will have to be
 > specified in pixels, because you can display images and pixel-granular
 > stretches of white space in the margins.)  For example, linum-mode
 > will specify a margin width of N columns, and display width of the
 > same N columns in pixels.

How would this work with scaled text?

 > By contrast, modes such as writeroom-mode
 > will specify a margin width of M columns and display width of zero.
 >
 > So we need to maintain, for each of the 2 margins, a list of elements
 > of the form:
 >
 >     (SYMBOL MARGIN-WIDTH DISPLAY-WIDTH)
 >
 > where SYMBOL is a unique symbol used to identify the request that came
 > from a specific feature/mode.  We should provide a function to return
 > this list, or maybe make it the value of a local public variable.  We
 > should also have a way for a feature to update its request.

This probably has to be a window parameter because at least the
margin-width may differ according to the window the buffer is displayed in.

 > Now regarding the split-window issue.  I believe we shouldn't try to
 > second-guess how to split windows in these cases.  Instead, we should
 > place the burden of doing TRT on the modes.  Specifically:
 >
 >   . for splitting the window with "C-x 2" and "C-x 3", the mode could
 >     simply invoke the correct splitting function itself

When two modes simultaneously use the margins, which splitting function
would be chosen?

 >   . for splitting the window as result of some command calling
 >     display-buffer, we could expect the modes to customize the
 >     display-buffer-* variables to control how the window is split (if
 >     there are currently no features/variables to that effect, we should
 >     add them)

When two modes simultaneously use the margins, which buffer display
function would be chosen?

And how would we handle functions like ‘set-window-fringes’ or
‘set-frame-width’?

martin




  reply	other threads:[~2015-12-02 17:43 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-12-01 21:28 Better handling of window margins Joost Kremers
2015-12-02  8:23 ` martin rudalics
2015-12-02 13:41 ` Eli Zaretskii
2015-12-02 17:43   ` martin rudalics [this message]
2015-12-02 17:53     ` Eli Zaretskii
2015-12-02 18:11       ` martin rudalics
2015-12-03  6:49         ` Eli Zaretskii
2015-12-03 18:16           ` martin rudalics
2015-12-03 20:09             ` Eli Zaretskii
2015-12-03 20:43               ` Stefan Monnier
2015-12-04  8:14                 ` Eli Zaretskii
2015-12-04 13:22                   ` Stefan Monnier
2015-12-04 14:46                     ` Eli Zaretskii
2015-12-04 17:30                       ` Stefan Monnier
2015-12-04 18:45                         ` Eli Zaretskii
2015-12-04 20:55                           ` Stefan Monnier
2015-12-04 21:13                             ` Eli Zaretskii
2015-12-04 21:33                               ` Stefan Monnier
2015-12-05  7:56                                 ` Eli Zaretskii
2015-12-05 15:17                                   ` Stefan Monnier
2015-12-05 15:49                                     ` Eli Zaretskii
2015-12-06  4:27                                       ` Stefan Monnier
2015-12-06  5:02                                         ` John Wiegley
2015-12-06 16:10                                           ` Eli Zaretskii
2015-12-06 20:24                                             ` Yuri Khan
2015-12-07  3:32                                               ` Eli Zaretskii
2015-12-07 10:35                                                 ` Yuri Khan
2015-12-07 16:39                                                   ` Eli Zaretskii
2015-12-07  0:29                                             ` John Wiegley
2015-12-07 16:24                                               ` Eli Zaretskii
2015-12-07 17:35                                                 ` John Wiegley
2015-12-07 17:38                                                   ` Achim Gratz
2015-12-07 17:41                                                     ` John Wiegley
2015-12-07 17:50                                                       ` Achim Gratz
2015-12-07 17:36                                                 ` Stefan Monnier
2015-12-07 17:39                                                   ` John Wiegley
2015-12-07 18:42                                                     ` Stefan Monnier
2015-12-07 19:14                                                       ` John Wiegley
2015-12-04  8:07               ` martin rudalics
2015-12-04  9:42                 ` Eli Zaretskii
2015-12-04 10:21                   ` martin rudalics
2015-12-04 15:34                     ` Eli Zaretskii
2015-12-04 16:56                       ` martin rudalics
2015-12-04 18:34                         ` Eli Zaretskii
2015-12-04 19:23                           ` martin rudalics
2015-12-02 19:52       ` Joost Kremers
2015-12-03  7:17         ` Eli Zaretskii
2015-12-02 19:55   ` Joost Kremers
2015-12-03  7:21     ` Eli Zaretskii
2015-12-04 12:49 ` John Wiegley

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=565F2DD3.9020400@gmx.at \
    --to=rudalics@gmx.at \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=joostkremers@fastmail.fm \
    /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.