all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: martin rudalics <rudalics@gmx.at>
To: Ingo Lohmar <ingo.lohmar@posteo.net>, Eli Zaretskii <eliz@gnu.org>
Cc: emacs-devel@gnu.org
Subject: Re: set-frame-size should respect line-spacing!?
Date: Sat, 12 Oct 2019 10:25:13 +0200	[thread overview]
Message-ID: <26dd3c24-f21d-bbef-a975-86318a8eaf80@gmx.at> (raw)
In-Reply-To: <877e5al9ny.fsf@kenko.localhost.com>

 > Are you saying `set-frame-size' is supposed to ignore line-spacing?  In
 > that case, what is the correct way to set the frame-size in the
 > pixel-exact way?

By using the PIXELWISE argument of 'set-frame-size'.  But note that
this sets the text size of the frame, see also the 'text-pixels' type
specification (section 29.4.3.3 Size Parameters of the Elisp manual).
I am working on 'inner-pixels', 'outer-pixels' and 'native-pixels' but
all these are so intrinsically platform dependent that I've hardly
made any progresss in the past years.

I earlier explained why we cannot make 'set-frame-size' obey the line
spacing of a specific buffer: A buffer might not be alone on a frame
and even if it is, switching to a buffer previously displayed in that
window might become inconvenient.

So we have a number of options which all will take considerable time
to implement:

(1) Change the semantics of the PIXELWISE argument for a number of
     user functions.  For 'set-frame-size' we could say that if its
     value is 'linewise', then use the 'window-default-line-height'
     value of the frame's selected window.

(2) Add, as also mentioned earlier, a frame parameter that controls
     the behavior in some way.

(3) Add some global option to control the behavior.  I suppose that
     this might be too strong.

And then we have to establish the set of commands we want to affect.
 From Bug#14825 we know that 'split-window-below' is one candidate and
probably most of the 'window-resize' type functions.  Then we probably
want to have size reporting functions handle line spaces as well.  If
you search for the occurrence of the term 'pixelwise' in the code of
window.el you will understand how much of change that would mean.

martin



  parent reply	other threads:[~2019-10-12  8:25 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-11 20:44 set-frame-size should respect line-spacing!? Ingo Lohmar
2019-10-12  7:00 ` Eli Zaretskii
2019-10-12  7:12   ` Ingo Lohmar
2019-10-12  7:48     ` Eli Zaretskii
2019-10-12  8:25       ` martin rudalics
2019-10-12  8:25     ` martin rudalics [this message]
2019-10-12  9:45       ` Eli Zaretskii
2019-10-12  9:56         ` Ingo Lohmar
2019-10-12 11:03         ` martin rudalics
2019-10-12 13:11           ` Eli Zaretskii
2019-10-13  8:16             ` martin rudalics
2019-10-13  9:10               ` Eli Zaretskii
2019-10-13 12:15                 ` martin rudalics
2019-10-13 12:18                   ` Eli Zaretskii
2019-10-13 12:51                     ` martin rudalics
2019-10-13 13:20                       ` Eli Zaretskii
2019-10-13 17:06                         ` martin rudalics
2019-10-14  8:06                           ` Eli Zaretskii

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=26dd3c24-f21d-bbef-a975-86318a8eaf80@gmx.at \
    --to=rudalics@gmx.at \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=ingo.lohmar@posteo.net \
    /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.