unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Default of jit-lock-stealth-time
@ 2007-02-25 12:13 David Kastrup
  2007-02-25 13:31 ` martin rudalics
                   ` (3 more replies)
  0 siblings, 4 replies; 89+ messages in thread
From: David Kastrup @ 2007-02-25 12:13 UTC (permalink / raw)
  To: emacs-devel


Hi,

I think that for the release, we should set jit-lock-stealth-time to
nil rather than its default of 16.

The reason is that Emacs wastes time fontifying buffers that might
never get displayed.  In addition, for problematic font-lock files,
Emacs' overall response gets sluggish, the cursor display gets
erratic, and system load goes up for no conceivable reason.

The problem is exacerbated when one has lots of buffers open and uses
desktop.el or similar packages.

For example, one of my buffers tends to be texbook.tex for reference
purposes.  This has unbalanced $ signs which make the syntax
highlighting thrash a lot.  It renders my whole system unresponsive
because an unattended Emacs session will at some point of time start
wasting cycles on a file that I have not accessed for days, and likely
will not access for several more days.  Apparently, the stealth
fontification gets stuck without useful progress.  In contrast,
opening the file directly will finish the problematic areas pretty
much immediately.

Other people might have fewer problems, but I would ask any developer
defending this default setting to customize
jit-lock-stealth-verbose
to t and then see in daily use whether he thinks the results a good
idea.

Personally, I am very much of the opinion that we should not enable
_any_ actions by default that can potentially waste considerable
amounts of CPU power in areas not immediately related to user
interaction.

Regardless of the system load: the load may be low at the moment
_exactly_ because the user terminated all processes that would disturb
the interactivity of his current work, and I think it a mistake that
Emacs considers the CPU fit for grabbing for its own purposes unless
the user _explicitly_ asked for it.

Whether it would be desirable to apply more fixes to stealth
fontification, I have no idea.  But the default enabling of it is a
mistake in my book regardless of whether it can be made less onerous.

The problem is exacerbated since it is impossible to guess what the
problem is when your system goes irresponsive:

Setting debug-on-quit will not deliver a backtrace pointing to
jit-lock at all when you press C-g: C-g does not interrupt timers.

There might always be buffers that cause font-lock to behave badly.
Emacs should not attempt fontifying them unless the user puts them
on-screen.

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum

^ permalink raw reply	[flat|nested] 89+ messages in thread

end of thread, other threads:[~2007-03-07 21:44 UTC | newest]

Thread overview: 89+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-02-25 12:13 Default of jit-lock-stealth-time David Kastrup
2007-02-25 13:31 ` martin rudalics
2007-02-25 22:29 ` Kim F. Storm
2007-02-26  3:27 ` Richard Stallman
2007-02-26  4:56   ` Stefan Monnier
2007-02-26 19:52     ` Richard Stallman
2007-02-26 20:14       ` Eli Zaretskii
2007-02-27  7:39         ` Richard Stallman
2007-02-27 20:43           ` Eli Zaretskii
2007-02-28  7:27             ` Richard Stallman
2007-02-28 20:36               ` Eli Zaretskii
2007-03-01  8:14                 ` Richard Stallman
2007-03-01 15:18                   ` Stefan Monnier
2007-03-01 15:56                     ` David Kastrup
2007-03-01 16:00                       ` Lennart Borgman (gmail)
2007-03-01 16:54                     ` Stuart D. Herring
2007-03-01 16:57                       ` Lennart Borgman (gmail)
2007-03-01 17:00                         ` Stuart D. Herring
2007-03-01 17:13                           ` David Kastrup
2007-03-02  1:59                             ` Juanma Barranquero
2007-03-03 13:22                   ` Eli Zaretskii
2007-03-03 13:36                     ` David Kastrup
2007-03-03 15:10                       ` Eli Zaretskii
2007-03-03 15:24                         ` Daniel Brockman
2007-03-03 15:43                           ` David Kastrup
2007-03-04  2:00                           ` Richard Stallman
2007-03-03 15:37                         ` David Kastrup
2007-03-03 23:18                           ` Eli Zaretskii
2007-03-04  8:16                             ` David Kastrup
2007-03-04 13:29                         ` David Kastrup
2007-03-04 20:59                           ` Eli Zaretskii
2007-03-04 21:13                             ` David Kastrup
2007-03-07  1:05                               ` Miles Bader
2007-03-07  4:50                                 ` David Kastrup
2007-03-07  5:01                                   ` Miles Bader
2007-03-07 21:44                                     ` David Kastrup
2007-03-05  2:55                           ` Richard Stallman
2007-03-05  7:18                             ` David Kastrup
2007-03-04  2:00                     ` Richard Stallman
2007-03-04  8:42                       ` David Kastrup
2007-03-05  2:55                         ` Richard Stallman
2007-02-26 21:33       ` Stefan Monnier
2007-02-27  8:17       ` David Kastrup
2007-02-27 20:48         ` Eli Zaretskii
2007-02-28  2:37         ` Richard Stallman
2007-02-28  2:37         ` Richard Stallman
2007-02-26  7:16   ` David Kastrup
2007-02-26 19:53     ` Richard Stallman
2007-02-27  8:19       ` David Kastrup
2007-02-26  4:39 ` Stefan Monnier
2007-02-26  7:11   ` Romain Francoise
2007-02-26  7:35     ` David Kastrup
2007-02-26 10:20       ` Andreas Schwab
2007-02-26 10:43         ` David Kastrup
2007-02-26 10:56           ` Andreas Schwab
2007-02-27  7:38             ` Richard Stallman
2007-02-27  8:31               ` David Kastrup
2007-02-27 11:00               ` David Kastrup
2007-02-28  2:37                 ` Richard Stallman
2007-02-26 11:26           ` Juanma Barranquero
2007-02-26 11:28             ` David Kastrup
2007-02-26 14:56               ` Juanma Barranquero
2007-02-26 12:13             ` Jan Djärv
2007-02-26 10:24       ` Kim F. Storm
2007-02-26 13:42         ` martin rudalics
2007-02-26 14:26           ` Stefan Monnier
2007-02-26 16:32             ` martin rudalics
2007-02-26 15:10           ` David Kastrup
2007-02-26 15:22             ` Kim F. Storm
2007-02-26 16:44               ` martin rudalics
2007-02-26 22:55                 ` Kim F. Storm
2007-02-26 19:56       ` Eli Zaretskii
2007-02-26 21:34         ` Stefan Monnier
2007-02-26 23:19           ` Miles Bader
2007-02-27  0:43             ` Stefan Monnier
2007-02-27  2:10               ` Miles Bader
2007-02-27  4:57                 ` Stefan Monnier
2007-02-27  8:23                   ` David Kastrup
2007-02-27 20:54                     ` Eli Zaretskii
2007-02-27 20:59                       ` David Kastrup
2007-02-27 21:19                         ` Eli Zaretskii
2007-02-27 22:02                           ` David Kastrup
2007-02-28  4:42                             ` Eli Zaretskii
2007-02-28  6:35                               ` David Kastrup
2007-02-28 20:33                                 ` Eli Zaretskii
2007-02-28  7:27                           ` Richard Stallman
2007-02-28 20:39                             ` Eli Zaretskii
2007-02-27 23:21                         ` Stefan Monnier
2007-02-27  4:22           ` Eli Zaretskii

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).