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

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

Re: Performance tips when using regular expressions (regexps) in font-lo


From: Stefan Monnier
Subject: Re: Performance tips when using regular expressions (regexps) in font-locking
Date: Fri, 30 Nov 2007 11:42:29 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.50 (gnu/linux)

> I have enhanced my cc-mode with extra font-locking for assignments,
> function calls, numerical literals, operators and even format strings
> to the [sf]?printf-functions. The regular expressions describing these
> context are quite complicated and as a result my cc-mode is no longer
> as snappy as without my enhancement. Does any have any tips on how to
> write regular expressions when performance is crucial? For example
> should I use [:space:] instead of [ \t]? Should I post the coden
> aswell?

I believe inmost cases micro-optimization such as choosing between
[[:space:]] and [ \t] will make no noticeable difference.
But you should pay attention to * and + operators, especially when
nested or when adjacent and make sure that there is no redundancy: there
should ideally be only one way for the regexp to match a given piece
of text.

E.g. avoid [ab]*a*


        Stefan


reply via email to

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