From: Eli Zaretskii <eliz@gnu.org>
To: Dmitry Gutov <dgutov@yandex.ru>
Cc: rudalics@gmx.at, emacs-devel@gnu.org
Subject: Re: Layered display API
Date: Sat, 16 Aug 2014 10:41:50 +0300 [thread overview]
Message-ID: <83r40gev9d.fsf@gnu.org> (raw)
In-Reply-To: <53EE91C5.9060502@yandex.ru>
> Date: Sat, 16 Aug 2014 03:03:33 +0400
> From: Dmitry Gutov <dgutov@yandex.ru>
> CC: rudalics@gmx.at, emacs-devel@gnu.org
>
> > What I'm suggesting will allow you not to duplicate the displayed
> > text, but just add an overlay with your own.
>
> Sorry, I'm getting strongly mixed signals here: just recently, when I
> enumerated a list of requirements for displaying our popup, you replied:
>
> """
> Given these requirements, I think the only 2 alternatives to implement
> them for GUI frames are:
>
> . tooltip frames, suitably beefed up to provide some features they
> currently don't, like more control of colors and faces
>
> . some low-level graphics feature that would allow to overlay an
> arbitrary pixmap on the window display (this is far from my area
> of expertise, so I cannot say anything more about this
> possibility)
>
> Nothing else seems possible, because if we rely on the current display
> engine, we will be unable to fully control at least the vertical
> position of the lines in your popup, and in some cases (e.g.,
> line-prefix) also the horizontal position.
> """
>
> So, which part of the job would the new text property perform, and which
> part of it will be left to us to implement?
None. The new property is yet another possibility, IMO inferior to
the 2 I suggested above.
> Let's imagine this sample case:
>
> (insert "e\naaaaaa\n")
> (insert (propertize " " 'display "bbbbbb\ncccccc")
>
> (By the way, try this out in *scratch* and do some C-n, C-p. Do you see
> the movement error? Here, the cursor always jumps over the "aaa..."
> line when moving toward the beginning of the buffer.)
Please file a bug report.
> Let's say the point is at the end of the first line (after "e"), and
> we'd like to display a popup under it, 4 columns wide and 2 lines tall.
> If the popup is all filled with "x" characters, it should look like this:
>
> e.
> axxxxa
> bxxxxb
> cccccc
>
> If the new property was already implemented, what would the code to do
> this look like?
Something like this:
(put-text-property POS1 POS1+4 'eliz "xxxx")
(put-text-property 1 5 STRING 'eliz "xxxx")
(put-text-property 8 12 STRING 'eliz "xxxx")
where POS1 is the buffer position of the second 'a', and STRING is the
string that is the value of the 'display' property.
next prev parent reply other threads:[~2014-08-16 7:41 UTC|newest]
Thread overview: 88+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-08-05 2:00 bug#18195: 24.3.92; window-screen-lines is not accurate Dmitry
2014-08-05 8:38 ` martin rudalics
2014-08-05 10:03 ` Dmitry Gutov
2014-08-05 10:16 ` martin rudalics
2014-08-05 10:24 ` Dmitry Gutov
2014-08-05 12:20 ` martin rudalics
2014-08-05 13:05 ` Dmitry Gutov
2014-08-05 13:50 ` martin rudalics
2014-08-05 14:06 ` Eli Zaretskii
2014-08-06 11:55 ` Dmitry Gutov
2014-08-06 16:13 ` martin rudalics
2014-08-05 14:01 ` Eli Zaretskii
2014-08-05 13:58 ` Eli Zaretskii
2014-08-05 14:08 ` martin rudalics
2014-08-05 14:13 ` Eli Zaretskii
2014-08-05 13:57 ` Eli Zaretskii
2014-08-05 13:51 ` Eli Zaretskii
2014-08-05 13:57 ` martin rudalics
2014-08-05 14:09 ` Eli Zaretskii
2014-08-05 14:12 ` martin rudalics
2014-08-05 14:23 ` Eli Zaretskii
2014-08-05 14:38 ` martin rudalics
2014-08-05 15:08 ` Eli Zaretskii
2014-08-05 15:45 ` martin rudalics
2014-08-05 17:57 ` Eli Zaretskii
2014-08-06 9:41 ` martin rudalics
2014-08-06 14:39 ` Eli Zaretskii
2014-08-06 14:41 ` Dmitry Gutov
2014-08-06 16:23 ` Eli Zaretskii
2014-08-06 16:26 ` Dmitry Gutov
2014-08-06 17:24 ` Eli Zaretskii
2014-08-06 18:02 ` Dmitry Gutov
2014-08-06 18:36 ` Eli Zaretskii
2014-08-06 21:09 ` Dmitry Gutov
2014-08-06 16:15 ` martin rudalics
2014-08-06 16:30 ` Eli Zaretskii
2014-08-06 17:46 ` martin rudalics
2014-08-06 18:03 ` Eli Zaretskii
2014-08-07 15:08 ` martin rudalics
2014-08-07 15:35 ` Eli Zaretskii
2014-08-07 15:39 ` martin rudalics
2014-08-07 16:36 ` Eli Zaretskii
2014-08-08 8:41 ` martin rudalics
2014-08-08 9:16 ` Eli Zaretskii
2014-08-08 10:10 ` martin rudalics
2014-08-08 10:25 ` Eli Zaretskii
2014-08-05 13:46 ` Eli Zaretskii
2014-08-05 21:21 ` Dmitry Gutov
2014-08-06 2:52 ` Eli Zaretskii
2014-08-06 12:09 ` Dmitry Gutov
2014-08-06 14:45 ` Eli Zaretskii
2014-08-06 15:07 ` Dmitry Gutov
2014-08-06 16:25 ` Eli Zaretskii
2014-08-06 16:37 ` Dmitry Gutov
2014-08-06 17:26 ` Eli Zaretskii
2014-08-06 12:40 ` Layered display API (was: bug#18195: 24.3.92; window-screen-lines is not accurate) Dmitry Gutov
2014-08-06 17:19 ` Eli Zaretskii
2014-08-06 18:20 ` Alp Aker
2014-08-06 18:39 ` Eli Zaretskii
2014-08-06 20:48 ` Layered display API Stefan Monnier
2014-08-07 2:45 ` Eli Zaretskii
2014-08-06 20:49 ` Dmitry Gutov
2014-08-07 15:39 ` Eli Zaretskii
2014-08-11 1:14 ` Dmitry Gutov
2014-08-11 15:01 ` Eli Zaretskii
2014-08-13 2:42 ` Dmitry Gutov
2014-08-13 12:46 ` Stefan Monnier
2014-08-13 15:29 ` Eli Zaretskii
2014-08-13 16:27 ` Dmitry Gutov
2014-08-13 17:07 ` Eli Zaretskii
2014-08-13 17:45 ` Stefan Monnier
2014-08-13 15:28 ` Eli Zaretskii
2014-08-14 2:35 ` Dmitry Gutov
2014-08-14 2:53 ` Eli Zaretskii
2014-08-14 13:12 ` Dmitry Gutov
2014-08-14 15:20 ` Eli Zaretskii
2014-08-15 1:20 ` Dmitry Gutov
2014-08-15 6:39 ` Eli Zaretskii
2014-08-15 23:03 ` Dmitry Gutov
2014-08-16 7:41 ` Eli Zaretskii [this message]
2014-08-16 9:17 ` Dmitry Gutov
2014-08-14 2:06 ` Bo Lin
2014-08-14 2:49 ` Eli Zaretskii
2014-08-14 16:08 ` Bo Lin
2014-08-14 16:19 ` Eli Zaretskii
2014-08-14 16:42 ` Bo Lin
2014-08-06 20:56 ` Stefan Monnier
2014-08-05 13:35 ` bug#18195: 24.3.92; window-screen-lines is not accurate 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=83r40gev9d.fsf@gnu.org \
--to=eliz@gnu.org \
--cc=dgutov@yandex.ru \
--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 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.