From: dalanicolai <dalanicolai@gmail.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: Emacs Devel <emacs-devel@gnu.org>
Subject: Re: Redisplay issues with 'space' display properties on overlays
Date: Sat, 16 Apr 2022 20:17:11 +0200 [thread overview]
Message-ID: <CACJP=3nO7Eo0oEhrsz0i6V+rS4APRK+xRDHDeTFPBbCz=fp07g@mail.gmail.com> (raw)
In-Reply-To: <83pmlhynw9.fsf@gnu.org>
[-- Attachment #1: Type: text/plain, Size: 3206 bytes --]
Well, for the second question, just do emacs -q,
then load papyrus.el and do `M-x papyrus-demo`.
For the first question pdf-tools is required to be installed,
I am not sure how to achieve that from emacs -q
(well besides building the server manually, after installing
pdf-tools using `list-packages` I guess).
So maybe you could answer/comment on the second question.
And maybe someone who has pdf-tools installed can
answer/comment on the first question.
But I have commented out the 'print hack' now, so that the
instruction becomes to 'uncomment` it (and 'slurp' it as final
statements inside the `papyrus-redisplay` function`), after testing
the behavior with the lines commented out first.
On Sat, 16 Apr 2022 at 18:49, Eli Zaretskii <eliz@gnu.org> wrote:
> > From: dalanicolai <dalanicolai@gmail.com>
> > Date: Sat, 16 Apr 2022 18:37:24 +0200
> >
> > 1. papyrus.el uses the `papyrus-redisplay` function, which creates the
> 'scroll'
> > by adding 'space' display properties to the overlays, and page images to
> > the 'currently visible overlays'. The redisplay works fine on
> Spacemacs/Doom,
> > but for vanilla Emacs, in order to 'finalize' the process requires a
> hack which is
> > to 'print' something to the echo area, after which the 'redisplay' will
> finish
> > and show the images.
> >
> > I have tried to use `redisplay/force-window-update` for this, but those
> do not
> > seem to have the right effect.
> >
> > Obviously, my question is if you can tell me why the hack 'is required'
> and what
> > would be the better way to achieve/finalize the redisplay.
> >
> > 2. I would expect that a specified space (space display property for the
> 'gap'
> > overlays, i.e. the space between the pages) could be smaller than the
> default
> > 'line-pixel-height`. However, this does not seem possible by just
> setting a
> > smaller :height for the space display property, as the overlay will
> always have
> > a minimum height of the default 'line-pixel-height'
> >
> > To see/reproduce what I mean you can simply load `papyrus.el` and do
> > `M-x papyrus-demo`. You can experiment with the 'gap/space-height' by
> setting
> > the `papyrus-gap-height`.
> >
> > For 'reproducing' the 'issue' of the first question, you can simply load
> > pdf-scroll.el (but first set the correct path to `papyrus.el` at the
> beginning
> > of that file. Also, pdf-scroll.el requires pdf-tools to be correctly
> installed).
> > Subsequently, open some pdf file, and split the window. I hope you will
> find
> > that the continuous scroll, including the functionality of the
> > `pdf-tools-enabled-modes`, works perfectly fine in vanilla Emacs (scroll
> with arrows
> > and page-down/up). Now, to see what I mean with the display 'issue'
> comment out the
> > last two lines of the `papyrus-redisplay` function, and again try to
> split the
> > window from the pdf buffer, you will find that the extra step of
> printing is
> > required before the image will show correctly.
>
> Since using the actual code requires complex setups, would you please
> show simpler recipes for these two issues, ones that can be used
> easily from "emacs -Q"? Then I will try to answer your questions
> above.
>
> Thanks.
>
[-- Attachment #2: Type: text/html, Size: 4067 bytes --]
next prev parent reply other threads:[~2022-04-16 18:17 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-04-16 16:37 papyrus.el, improved/simplified/"final" implementation of continuous scroll dalanicolai
2022-04-16 16:46 ` Eli Zaretskii
2022-04-16 19:00 ` dalanicolai
2022-04-16 16:49 ` Redisplay issues with 'space' display properties on overlays Eli Zaretskii
2022-04-16 18:17 ` dalanicolai [this message]
2022-04-16 18:32 ` Eli Zaretskii
2022-04-16 18:40 ` dalanicolai
2022-04-16 19:02 ` Eli Zaretskii
2022-04-16 18:47 ` dalanicolai
2022-04-16 18:57 ` dalanicolai
2022-04-16 19:06 ` Eli Zaretskii
2022-04-16 19:16 ` dalanicolai
2022-04-16 19:18 ` Eli Zaretskii
2022-04-16 19:33 ` dalanicolai
2022-04-16 19:52 ` dalanicolai
2022-04-16 21:39 ` dalanicolai
2022-04-16 19:36 ` dalanicolai
2022-04-16 18:32 ` dalanicolai
2022-04-16 18:36 ` Eli Zaretskii
2022-04-16 18:38 ` Eli Zaretskii
2022-04-16 18:49 ` dalanicolai
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='CACJP=3nO7Eo0oEhrsz0i6V+rS4APRK+xRDHDeTFPBbCz=fp07g@mail.gmail.com' \
--to=dalanicolai@gmail.com \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
/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).