[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: CC Mode with font-lock-maximum-decoration 2
From: |
Alan Mackenzie |
Subject: |
Re: CC Mode with font-lock-maximum-decoration 2 |
Date: |
Mon, 8 Aug 2022 18:20:48 +0000 |
Hello, Eli.
On Mon, Aug 08, 2022 at 20:15:25 +0300, Eli Zaretskii wrote:
> > Date: Mon, 8 Aug 2022 15:05:29 +0000
> > Cc: emacs-devel@gnu.org
> > From: Alan Mackenzie <acm@muc.de>
> > For this measurement, I started with subr.el, and appended copies of it
> > to itself, then took functions off the end, to make it the same size as
> > xdisp.c. xdisp.c is 1209233 bytes, my .el buffer was 1209371 bytes.
> > I used M-: (benchmark-run 1 (time-scroll-b)) on each buffer, with:
> > (defun time-scroll-b (&optional arg) ; For use in `benchmark-run'.
> > (condition-case nil
> > (while t
> > (if arg (scroll-down) (scroll-up))
> > (sit-for 0))
> > (error nil)))
> > .. The exact results were:
> > (xdisp.c): (5.7370774540000005 9 0.7672129740000013)
> > (elisp): (4.1201735589999995 5 0.42918214299999846).
> > This was, of course, on an optimised build on GNU/Linux using the Linux
> > console, both measurements starting at BOB, having typed and deleted a
> > character to erase existing font-locking.
> Editing source code is more than just scrolling through the text and
> getting it fontified, though.
Yes, of course. Here I'm deliberately separating the fontification from
the buffer changes to get a ballpark figure purely for the fontification.
And the results suggest that optimising that in CC Mode/2 is not going to
be fruitful.
> For realistic measurements, you need to emulate and time a typical mix
> of editing operations.
Yes. I'm intending to do that sometime soon.
--
Alan Mackenzie (Nuremberg, Germany).
- Re: Why tree-sitter instead of Semantic? (was Re: CC Mode with font-lock-maximum-decoration 2), (continued)
- Re: Why tree-sitter instead of Semantic? (was Re: CC Mode with font-lock-maximum-decoration 2), Po Lu, 2022/08/13
- Re: Why tree-sitter instead of Semantic? (was Re: CC Mode with font-lock-maximum-decoration 2), Lynn Winebarger, 2022/08/16
- Re: Why tree-sitter instead of Semantic? (was Re: CC Mode with font-lock-maximum-decoration 2), Po Lu, 2022/08/16
- Re: Why tree-sitter instead of Semantic? (was Re: CC Mode with font-lock-maximum-decoration 2), Eli Zaretskii, 2022/08/16
- Re: Why tree-sitter instead of Semantic? (was Re: CC Mode with font-lock-maximum-decoration 2), Lynn Winebarger, 2022/08/16
- Re: Why tree-sitter instead of Semantic? (was Re: CC Mode with font-lock-maximum-decoration 2), Stefan Monnier, 2022/08/16
- Re: Why tree-sitter instead of Semantic? (was Re: CC Mode with font-lock-maximum-decoration 2), Lynn Winebarger, 2022/08/16
- Re: Why tree-sitter instead of Semantic? (was Re: CC Mode with font-lock-maximum-decoration 2), Eric Ludlam, 2022/08/16
- Re: Why tree-sitter instead of Semantic? (was Re: CC Mode with font-lock-maximum-decoration 2), Lynn Winebarger, 2022/08/18
- Re: Why tree-sitter instead of Semantic? (was Re: CC Mode with font-lock-maximum-decoration 2), Eric Ludlam, 2022/08/20
- Re: CC Mode with font-lock-maximum-decoration 2,
Alan Mackenzie <=
- Re: Major modes using `widen' is a good, even essential, programming practice., Gregory Heytings, 2022/08/07
- Re: Major modes using `widen' is a good, even essential, programming practice., Alan Mackenzie, 2022/08/07
- Re: Major modes using `widen' is a good, even essential, programming practice., Gregory Heytings, 2022/08/07
- Re: Major modes using `widen' is a good, even essential, programming practice., Eli Zaretskii, 2022/08/07
- Re: Major modes using `widen' is a good, even essential, programming practice., Alan Mackenzie, 2022/08/08
- Re: Major modes using `widen' is a good, even essential, programming practice., Eli Zaretskii, 2022/08/08
- Re: Major modes using `widen' is a good, even essential, programming practice., Stefan Monnier, 2022/08/07
- Re: Major modes using `widen' is a good, even essential, programming practice., Eli Zaretskii, 2022/08/07
- Re: Major modes using `widen' is a good, even essential, programming practice., Stefan Monnier, 2022/08/08
- Re: Major modes using `widen' is a good, even essential, programming practice., Lynn Winebarger, 2022/08/08