From: Eli Zaretskii <eliz@gnu.org>
To: Lars Ingebrigtsen <larsi@gnus.org>
Cc: emacs-devel@gnu.org, stefankangas@gmail.com, dgutov@yandex.ru
Subject: Re: Tick Reduction
Date: Wed, 24 Nov 2021 19:41:20 +0200 [thread overview]
Message-ID: <83bl298n9b.fsf@gnu.org> (raw)
In-Reply-To: <87o869wkcx.fsf@gnus.org> (message from Lars Ingebrigtsen on Wed, 24 Nov 2021 18:10:06 +0100)
> From: Lars Ingebrigtsen <larsi@gnus.org>
> Cc: dgutov@yandex.ru, stefankangas@gmail.com, emacs-devel@gnu.org
> Date: Wed, 24 Nov 2021 18:10:06 +0100
>
> Eli Zaretskii <eliz@gnu.org> writes:
>
> > Btw, why don't you just record in the iterator the position where it
> > ends when you first see the property, instead of trying to identify
> > that by comparing property values? The iterator structure has a
> > member called 'position' for this purpose.
>
> Hm... how do I know where it ends when I see the start?
There's the display_prop_end function we normally use for that.
> > In any case, can you please explain what the test bufpos == 0 tries to
> > test? I'd like to understand the logic there.
>
> I may well have misunderstood something, but my bufpos == 0 test is
> testing whether I'm really being called from display_string. If it not
> 0, I'm assuming I'm being called while displaying a buffer.
I guessed that much, but again: if you just want to test that you are
called from display_string, the test STRINGP (object) should be
enough.
And I'm confused by the fact that for buffers you test
if (bufpos > BEGV && EQ (FOO, BAR))
whereas for a string you test
if (bufpos == 0 && !EQ (FOO, BAR))
The equivalent of BEGV in strings is zero, so I'd expect
if (bufpos > 0
and also why is the first case tests equality, whereas the second one
tests INequality?
IOW, the issue here AFAIU is that you might be called to display
buffer text with this property or to display a Lisp string with this
property, so the tests should be equivalent, and the only difference
between strings and buffers is that text starts at BEGV in buffers but
at zero in strings. So why there are more differences that that?
What am I missing?
next prev parent reply other threads:[~2021-11-24 17:41 UTC|newest]
Thread overview: 167+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-11-18 20:37 Tick Reduction Lars Ingebrigtsen
2021-11-18 21:01 ` Perry E. Metzger
2021-11-19 5:25 ` Lars Ingebrigtsen
2021-11-18 21:23 ` Dmitry Gutov
2021-11-19 5:27 ` Lars Ingebrigtsen
2021-11-19 6:31 ` Michael Welsh Duggan
2021-11-19 6:50 ` Stefan Kangas
2021-11-19 7:05 ` Lars Ingebrigtsen
2021-11-19 8:19 ` Eli Zaretskii
2021-11-19 8:30 ` Lars Ingebrigtsen
2021-11-20 8:01 ` Eli Zaretskii
2021-11-20 9:07 ` Lars Ingebrigtsen
2021-11-21 15:11 ` Lars Ingebrigtsen
2021-11-21 17:16 ` Eli Zaretskii
2021-11-21 17:24 ` Lars Ingebrigtsen
2021-11-21 17:39 ` Eli Zaretskii
2021-11-21 18:00 ` Lars Ingebrigtsen
2021-11-21 18:15 ` Eli Zaretskii
2021-11-21 18:25 ` Lars Ingebrigtsen
2021-11-21 18:33 ` Lars Ingebrigtsen
2021-11-21 19:31 ` Eli Zaretskii
2021-11-21 19:34 ` Lars Ingebrigtsen
2021-11-21 19:36 ` Lars Ingebrigtsen
2021-11-21 19:41 ` Lars Ingebrigtsen
2021-11-21 19:49 ` Eli Zaretskii
2021-11-21 19:53 ` Lars Ingebrigtsen
2021-11-21 20:07 ` Eli Zaretskii
2021-11-21 20:17 ` Lars Ingebrigtsen
2021-11-21 20:26 ` Eli Zaretskii
2021-11-21 20:30 ` Lars Ingebrigtsen
2021-11-21 20:31 ` Lars Ingebrigtsen
2021-11-22 8:19 ` Lars Ingebrigtsen
2021-11-22 14:45 ` Eli Zaretskii
2021-11-22 14:50 ` Lars Ingebrigtsen
2021-11-22 17:21 ` Eli Zaretskii
2021-11-22 18:35 ` Stefan Monnier
2021-11-23 10:15 ` Lars Ingebrigtsen
2021-11-23 13:41 ` Eli Zaretskii
2021-11-23 13:49 ` Lars Ingebrigtsen
2021-11-23 14:19 ` Eli Zaretskii
2021-11-23 14:32 ` Lars Ingebrigtsen
2021-11-23 14:43 ` Eli Zaretskii
2021-11-24 11:07 ` Lars Ingebrigtsen
2021-11-24 14:20 ` Eli Zaretskii
2021-11-24 16:28 ` Lars Ingebrigtsen
2021-11-24 17:05 ` Eli Zaretskii
2021-11-24 17:10 ` Lars Ingebrigtsen
2021-11-24 17:41 ` Eli Zaretskii [this message]
2021-11-24 17:50 ` Lars Ingebrigtsen
2021-11-24 18:39 ` Eli Zaretskii
2021-11-24 18:44 ` Lars Ingebrigtsen
2021-11-24 19:00 ` Eli Zaretskii
2021-11-25 13:02 ` Lars Ingebrigtsen
2021-11-25 12:58 ` Lars Ingebrigtsen
2021-11-25 13:28 ` Eli Zaretskii
2021-11-25 14:29 ` Lars Ingebrigtsen
2021-11-25 15:10 ` Eli Zaretskii
2021-11-26 12:12 ` Lars Ingebrigtsen
2021-11-26 12:43 ` Eli Zaretskii
2021-11-24 18:41 ` Lars Ingebrigtsen
2021-11-24 18:53 ` Eli Zaretskii
2021-11-24 22:32 ` Yuan Fu
2021-11-25 7:34 ` Eli Zaretskii
2021-11-26 17:03 ` Yuan Fu
2021-11-26 18:41 ` Eli Zaretskii
2021-11-26 18:54 ` Yuan Fu
2021-11-26 18:57 ` Eli Zaretskii
2021-11-25 13:06 ` Lars Ingebrigtsen
2021-11-25 14:02 ` Eli Zaretskii
2021-11-25 14:07 ` Lars Ingebrigtsen
2021-11-25 14:12 ` Eli Zaretskii
2021-11-25 14:16 ` Lars Ingebrigtsen
2021-11-25 15:04 ` Eli Zaretskii
2021-11-26 12:09 ` Lars Ingebrigtsen
2021-11-26 12:56 ` Eli Zaretskii
2021-11-27 14:15 ` Lars Ingebrigtsen
2021-11-27 14:51 ` Eli Zaretskii
2021-11-29 13:40 ` Lars Ingebrigtsen
2021-11-29 13:53 ` Eli Zaretskii
2021-11-29 14:00 ` Lars Ingebrigtsen
2021-11-29 14:06 ` Eli Zaretskii
2021-11-29 14:15 ` Lars Ingebrigtsen
2021-11-29 14:17 ` Eli Zaretskii
2021-11-29 14:35 ` Eli Zaretskii
2021-11-29 15:06 ` Lars Ingebrigtsen
2021-11-24 23:10 ` Feng Shu
2021-11-25 7:42 ` Eli Zaretskii
2021-11-25 11:52 ` Lars Ingebrigtsen
2021-11-22 23:26 ` chad
2021-11-21 20:10 ` Lars Ingebrigtsen
2021-11-21 20:22 ` Eli Zaretskii
2021-11-21 20:28 ` Lars Ingebrigtsen
2021-11-21 20:41 ` Lars Ingebrigtsen
2021-11-21 21:13 ` Eli Zaretskii
2021-11-21 20:42 ` Eli Zaretskii
2021-11-21 21:12 ` Eli Zaretskii
2021-11-22 11:22 ` Lars Ingebrigtsen
2021-11-22 14:52 ` Eli Zaretskii
2021-11-22 14:55 ` Lars Ingebrigtsen
2021-11-22 18:04 ` Eli Zaretskii
2021-11-19 8:33 ` Stefan Kangas
2021-11-19 8:39 ` Lars Ingebrigtsen
2021-11-19 8:48 ` Eli Zaretskii
2021-11-19 10:00 ` Lars Ingebrigtsen
2021-11-19 10:28 ` Stefan Kangas
2021-11-19 12:41 ` Eli Zaretskii
2021-11-19 13:04 ` Stefan Kangas
2021-11-19 13:18 ` Eli Zaretskii
2021-11-19 13:41 ` Stefan Kangas
2021-11-19 13:48 ` Eli Zaretskii
2021-11-21 13:35 ` Stefan Kangas
2021-11-19 10:28 ` Stefan Kangas
2021-11-20 8:43 ` Lars Ingebrigtsen
2021-11-20 9:03 ` Eli Zaretskii
2021-11-20 9:26 ` Lars Ingebrigtsen
2021-11-20 9:51 ` Eli Zaretskii
2021-11-20 9:56 ` Lars Ingebrigtsen
2021-11-20 10:11 ` Eli Zaretskii
2021-11-21 8:57 ` Lars Ingebrigtsen
2021-11-21 9:02 ` Lars Ingebrigtsen
2021-11-21 13:36 ` Stefan Kangas
2021-11-21 19:26 ` Lars Ingebrigtsen
2021-11-21 13:54 ` Stefan Kangas
2021-11-21 15:25 ` Lars Ingebrigtsen
2021-11-21 19:28 ` Stefan Kangas
2021-11-21 19:31 ` Lars Ingebrigtsen
2021-11-22 14:57 ` Use variable-pitch face in more places Stefan Kangas
2021-11-22 15:05 ` Stefan Kangas
2021-11-22 17:22 ` Juri Linkov
2021-11-22 18:10 ` Stefan Kangas
2021-11-22 18:40 ` Juri Linkov
2021-11-23 9:56 ` Lars Ingebrigtsen
2021-11-24 9:12 ` Juri Linkov
2021-11-24 16:52 ` Lars Ingebrigtsen
2021-11-24 17:59 ` Juri Linkov
2021-11-19 7:48 ` Tick Reduction Eli Zaretskii
2021-11-19 13:41 ` Stefan Kangas
2021-11-19 11:58 ` Dmitry Gutov
2021-11-18 22:18 ` [External] : " Drew Adams
2021-11-21 10:17 ` Phil Sainty
2021-11-19 5:48 ` Lars Ingebrigtsen
2021-11-19 7:24 ` Eli Zaretskii
2021-11-19 7:28 ` Lars Ingebrigtsen
2021-11-19 8:26 ` Eli Zaretskii
2021-11-19 8:33 ` Lars Ingebrigtsen
2021-11-19 6:42 ` Eric S Fraga
2021-11-19 7:30 ` Lars Ingebrigtsen
2021-11-19 6:52 ` Stefan Kangas
2021-11-19 7:26 ` Lars Ingebrigtsen
2021-11-19 7:59 ` Stefan Kangas
2021-11-19 8:17 ` Lars Ingebrigtsen
2021-11-19 8:09 ` Eli Zaretskii
2021-11-19 8:34 ` Stefan Kangas
2021-11-19 13:58 ` Stefan Monnier
2021-11-19 14:46 ` Eli Zaretskii
2021-11-19 18:22 ` Stefan Monnier
2021-11-19 18:53 ` Eli Zaretskii
2021-11-19 19:24 ` Stefan Monnier
2021-11-19 19:50 ` Eli Zaretskii
2021-11-19 21:09 ` Stefan Monnier
2021-11-20 6:34 ` Eli Zaretskii
2021-11-20 13:11 ` Stefan Monnier
2021-11-20 13:32 ` Eli Zaretskii
2021-11-20 14:06 ` Stefan Monnier
2021-11-20 14:35 ` Eli Zaretskii
2021-11-20 15:01 ` Stefan Monnier
2021-11-20 9:00 ` Lars Ingebrigtsen
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=83bl298n9b.fsf@gnu.org \
--to=eliz@gnu.org \
--cc=dgutov@yandex.ru \
--cc=emacs-devel@gnu.org \
--cc=larsi@gnus.org \
--cc=stefankangas@gmail.com \
/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).