all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Stefan Monnier <monnier@iro.umontreal.ca>
To: Lennart Borgman <lennart.borgman@gmail.com>
Cc: Daniel Colascione <danc@merrillpress.com>,
	Daniel Colascione <danc@merrillprint.com>,
	Deniz Dogan <deniz.a.m.dogan@gmail.com>,
	emacs-devel@gnu.org, Leo <sdl.web@gmail.com>,
	Miles Bader <miles@gnu.org>
Subject: Re: "Font-lock is limited to text matching" is a myth
Date: Mon, 10 Aug 2009 23:33:33 -0400	[thread overview]
Message-ID: <jwv4osfkp1x.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <e01d8a50908101155o18ae93fchca9de9c3ac246879@mail.gmail.com> (Lennart Borgman's message of "Mon, 10 Aug 2009 20:55:28 +0200")

> I think Daniel suggested that it is a frame-work that can be used for
> book-keeping of how far parsing has gone (the state must be kept
> elsewhere) and parsing while Emacs is idle.  Don't you think it can be
> used for that?

As it stands, it's not really adapted to it.
I mean, it's OK and there's worse, but it's not great.  It's designed
mostly to keep track of what has been highlighted (without paying too
much attention to potential dependencies between chunks), and it is
designed to rehighlight the parts that change and that are displayed.

For parsing, we generally assume sequential dependencies (e.g. can't
parse the end of the buffer before parsing the beginning), so
font-lock's tracking is not very well adapted.  And parsing may need to
be applied to chunks of text that has not yet and will never
be displayed.

Basically font-lock-syntactic-keywords is the part of font-lock that was
"designed" to handle the parsing side (together with syntax-table), but
it deserves to be improved significantly and it should be moved out of
font-lock since it provides services that are useful/needed by many
other packages, and in buffers where font-lock might not even
be desired.


        Stefan




  reply	other threads:[~2009-08-11  3:33 UTC|newest]

Thread overview: 122+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-08-09 23:34 Why js2-mode in Emacs 23.2? Deniz Dogan
2009-08-09 23:38 ` Lennart Borgman
2009-08-09 23:46   ` Daniel Colascione
2009-08-09 23:50     ` Deniz Dogan
2009-08-09 23:56       ` Lennart Borgman
2009-08-09 23:56       ` Daniel Colascione
2009-08-09 23:55     ` Lennart Borgman
2009-08-09 23:58       ` Daniel Colascione
2009-08-10  0:00         ` Lennart Borgman
2009-08-10  0:06           ` Daniel Colascione
2009-08-10  0:17             ` Lennart Borgman
2009-08-10  0:46               ` Daniel Colascione
2009-08-10  0:55                 ` Lennart Borgman
2009-08-10  0:18         ` Leo
2009-08-10  0:49           ` Daniel Colascione
2009-08-10  7:06           ` Carsten Dominik
2009-08-10  8:44             ` Leo
2009-08-10  8:54               ` CHENG Gao
2009-08-10  9:26                 ` Leo
2009-08-10 10:22                   ` Richard Riley
2009-08-10 15:21                   ` eval-after-load not harmful after all (Was: Re: Why js-2mode?) Daniel Colascione
2009-08-10 17:01                     ` Drew Adams
2009-08-10 17:21                       ` eval-after-load not harmful after all Stefan Monnier
2009-08-11  0:43                       ` eval-after-load not harmful after all (Was: Re: Why js-2mode?) Stephen J. Turnbull
2009-08-11  0:46                         ` Drew Adams
2009-08-11 14:06                           ` Stephen J. Turnbull
2009-08-11 15:08                           ` eval-after-load not harmful after all Stefan Monnier
2009-08-16 21:43                             ` Leo
2009-08-17  0:34                               ` Lennart Borgman
2009-08-17 11:44                                 ` Leo
2009-08-17 11:55                                   ` Lennart Borgman
2009-08-17 12:26                                     ` Leo
2009-08-17 14:40                                       ` Lennart Borgman
2009-08-11  0:53                         ` eval-after-load not harmful after all (Was: Re: Why js-2mode?) Lennart Borgman
2009-08-11  3:06                         ` Daniel Colascione
2009-08-11  9:17                           ` Leo
2009-08-11 14:37                           ` Stephen J. Turnbull
2009-08-10 10:41               ` Why js2-mode in Emacs 23.2? Carsten Dominik
2009-08-10 13:04                 ` Leo
2009-08-10 14:55                   ` Stefan Monnier
2009-08-11  1:13                 ` Glenn Morris
2009-08-11  3:02                   ` Daniel Colascione
2009-08-11  4:28                     ` Dan Nicolaescu
2009-08-11  4:33                       ` Daniel Colascione
2009-08-11  4:39                         ` Dan Nicolaescu
2009-08-11  4:45                           ` Daniel Colascione
2009-08-11  4:37                     ` Glenn Morris
2009-08-10  2:47         ` Stefan Monnier
2009-08-10  2:55           ` Lennart Borgman
2009-08-10 13:12             ` Stefan Monnier
2009-08-10  0:32   ` Leo
2009-08-10  0:48     ` Daniel Colascione
2009-08-10  2:55       ` Stefan Monnier
2009-08-10  3:24         ` Miles Bader
2009-08-10  3:27           ` Lennart Borgman
2009-08-10  3:45             ` Daniel Colascione
2009-08-10  5:18             ` Jason Rumney
2009-08-10  5:51           ` Xah Lee
2009-08-10  6:22             ` Xah Lee
2009-08-10  6:59               ` Miles Bader
2009-08-10 11:01             ` Lennart Borgman
2009-08-10 17:35             ` "Font-lock is limited to text matching" is a myth Daniel Colascione
2009-08-10 18:04               ` Lennart Borgman
2009-08-10 20:42                 ` David Engster
2009-08-10 20:51                   ` Lennart Borgman
2009-08-10 22:06                     ` Eric M. Ludlam
2009-08-10 22:19                       ` Lennart Borgman
2009-08-11  1:50                         ` Eric M. Ludlam
2009-08-11  6:47                           ` Steve Yegge
2009-08-11  9:17                             ` Miles Bader
2009-08-11 12:13                             ` Daniel Colascione
2009-08-11 14:37                               ` Miles Bader
2009-08-11 14:49                                 ` Lennart Borgman
2009-08-11 14:57                                   ` Daniel Colascione
2009-08-11 14:53                                 ` Daniel Colascione
2009-08-11 15:08                                   ` Lennart Borgman
2009-08-11 15:36                                   ` Miles Bader
2009-08-11 15:56                                 ` Stephen J. Turnbull
2009-08-11 15:54                                   ` Lennart Borgman
2009-08-11 17:00                                     ` Stephen J. Turnbull
2009-08-11 17:19                                       ` Lennart Borgman
2009-08-11 15:57                                   ` Miles Bader
2009-08-11 17:06                                     ` Stephen J. Turnbull
2009-08-11 14:50                               ` Chong Yidong
2009-08-11 15:06                                 ` Daniel Colascione
2009-08-11 15:11                                   ` Lennart Borgman
2009-08-11 15:16                                     ` Daniel Colascione
2009-08-11 15:44                                       ` Lennart Borgman
2009-08-11 18:04                                   ` joakim
2009-08-11 18:08                                     ` Lennart Borgman
2009-08-11 19:12                                       ` joakim
2009-08-11 17:09                               ` Stefan Monnier
2009-08-11 16:04                             ` Stefan Monnier
2009-08-11 18:10                               ` Edward O'Connor
2009-08-12  1:58                               ` Steve Yegge
2009-08-12 13:48                                 ` Chong Yidong
2009-08-12 16:07                                   ` Lennart Borgman
2009-08-12 22:08                                   ` Steve Yegge
2009-08-14  1:22                                 ` Stefan Monnier
2009-08-12  2:16                               ` Eric M. Ludlam
2009-08-12  6:43                                 ` Miles Bader
2009-08-12 11:28                                   ` Xah Lee
2010-11-23 14:43                                   ` Stefan Monnier
2009-08-12 15:21                               ` asynchronous parsing (was: "Font-lock is limited to text matching" is a myth) Ted Zlatanov
2009-08-12 17:16                                 ` asynchronous parsing joakim
2009-08-12 19:39                                   ` Ted Zlatanov
2009-08-12 20:01                                     ` joakim
2009-08-13  2:51                                 ` Stefan Monnier
2009-08-13 14:51                                   ` Ted Zlatanov
2009-08-11 19:48                           ` "Font-lock is limited to text matching" is a myth Lennart Borgman
2009-08-10 18:47               ` Stefan Monnier
2009-08-10 18:55                 ` Lennart Borgman
2009-08-11  3:33                   ` Stefan Monnier [this message]
2009-08-10 14:49           ` Why js2-mode in Emacs 23.2? Stefan Monnier
2009-08-10  6:46         ` Deniz Dogan
2009-08-10 14:53           ` Stefan Monnier
2009-08-10 14:05       ` Stephen Eilert
2009-08-10 14:37         ` Lennart Borgman
2009-08-10 14:42           ` Deniz Dogan
2009-08-10 19:12           ` Stephen Eilert
2009-08-10 14:41         ` Deniz Dogan
2009-08-10 14:57           ` Lennart Borgman

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=jwv4osfkp1x.fsf-monnier+emacs@gnu.org \
    --to=monnier@iro.umontreal.ca \
    --cc=danc@merrillpress.com \
    --cc=danc@merrillprint.com \
    --cc=deniz.a.m.dogan@gmail.com \
    --cc=emacs-devel@gnu.org \
    --cc=lennart.borgman@gmail.com \
    --cc=miles@gnu.org \
    --cc=sdl.web@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 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.