all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: David Kastrup <dak@gnu.org>
To: emacs-devel@gnu.org
Subject: Default of jit-lock-stealth-time
Date: Sun, 25 Feb 2007 13:13:08 +0100	[thread overview]
Message-ID: <85tzxazb8r.fsf@lola.goethe.zz> (raw)


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

             reply	other threads:[~2007-02-25 12:13 UTC|newest]

Thread overview: 89+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-02-25 12:13 David Kastrup [this message]
2007-02-25 13:31 ` Default of jit-lock-stealth-time 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

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=85tzxazb8r.fsf@lola.goethe.zz \
    --to=dak@gnu.org \
    --cc=emacs-devel@gnu.org \
    /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.