help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Interfering fontification in C?


From: Douglas "Local Deity" Lewan
Subject: Re: Interfering fontification in C?
Date: Wed, 31 Dec 2003 15:58:51 GMT
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2

Alan Mackenzie<none@example.invalid> writes:

> Douglas "Local Deity" Lewan <doug@toucan.emperorlinux.com> wrote on Wed,
> 31 Dec 2003 05:19:09 GMT:
> 
> > All,
> 
> > On occasion, C-mode gets into a bad fontification state for me.
> 
> What Emacs version are you using?  (M-x emacs-version).
> What CC Mode version have you got?  (M-x c-version).


Sorry.  I've got the following versions

emacs:  21.2
CC-mode:  5.28

> 
> > With every keystroke, I'll get an error like the following.
> 
> >   font-lock-fontify-keywords-region(162 687 nil)
> >   font-lock-default-fontify-region(162 663 nil)
> >   font-lock-fontify-region(162 663)
> >   run-hook-with-args(font-lock-fontify-region 162 663)
> >   jit-lock-fontify-now(162 662)
> >   jit-lock-function(162)
> >   sit-for(0.125)
> >   jit-lock-stealth-fontify()
> >   apply(jit-lock-stealth-fontify nil)
> >   byte-code("...." [timer apply 5 6] 4)
> >   timer-event-handler([t 0 3 0 3 jit-lock-stealth-fontify nil t])
> 
> OK.  This is the back trace.  What was the error message that was
> signalled?  (This message should appear in your *Messages* buffer.)
> 
> > There are also errors that claim emacs has tried something like
> 
> >   (font-lock-fontify-region (match-beginning 5)
> >                             (match-end 1))
> 
> > which seems pretty darned odd to me.  (Sorry if I've got the real error
> > here wrong.  It happens inside an (eval) and I'm not seeing it at the
> > moment.)
> 
> Not necessarily.  In this case, match 1 probably _encloses_ matches 2, 3,
> 4 and 5.
> 
> > Can anyone one help me understand what's going on?  Or fix it?
> > Or avoid it?
> 
> Yes, maybe, and hopefully yes.  My feel is that you've hit some nasty
> interaction between CC Mode and Jit Lock mode.  The backtrace you give
> above shows that the error is happening during Jit Lock's "stealth
> fontification" (i.e., the background fontification which happens after
> you haven't typed a key for some time.)
> 
> One way forward could be to upgrade to the latest CC Mode (available from
> <http://cc-mode.sourceforge.net/release.php>).  This might help if your
> current version (M-x c-version) is lower than 5.31.  If you're already
> using 5.31 (or 5.31.1, etc.) and are prepared to help debug the problem,
> a bug report to the CC Mode mailing list (at bug-cc-mode@gnu.org) would
> be most appreciated.
> 
> As a quick fix, you might try using Lazy Lock mode instead, by putting
> the following early on in your .emacs:
> 
> (setq font-lock-support-mode 'lazy-lock-mode) 
> 
> Happy New Year!
> 
> > Douglas Lewan
> 
> -- 
> Alan Mackenzie (Munich, Germany)
> Email: aacm@muuc.dee; to decode, wherever there is a repeated letter
> (like "aa"), remove half of them (leaving, say, "a").
> 

-- 
,Doug
Douglas Lewan
d_lewan2000@yahoo.com

    All the simple programs have been written,
    and all the good names taken.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]