Subject: Re: bug#69773: 29.2; Emacs Crashes on Startup Sometimes

From: Eli Zaretskii <[email-masked]>
Date: Fri, 15 Mar 2024 09:46:52 +0200

> From: Stephen Molitor <[email-masked]>
> Date: Thu, 14 Mar 2024 17:10:37 -0500
> 
> Not that I’ve noticed.
> 
> I mean maybe it does, but I haven’t noticed. I have a fast machine. Is there an easy way to measure?

Yes, of course.  Here's one example:

  (defun scroll-up-benchmark ()
    (interactive)
    (let ((oldgc gcs-done)
	  (oldtime (float-time)))
      (condition-case nil (while t (scroll-up) (redisplay))
	(error (message "GCs: %d Elapsed time: %f seconds"
			(- gcs-done oldgc) (- (float-time) oldtime))))))

Run this on a large file (I use src/xdisp.c) with and without your
set-char-table-range customization, and compare the results.

Btw, why aren't digit characters 0-9 in the regexp you use in
sm-safe-table?  More generally, why not all of the ASCII characters
are there? isn't smart kerning performed for them as well?  Come to
think about that, what about Latin non-ASCII characters like á etc.?