# HG changeset patch # User Alan Mackenzie # Date 1264695890 0 # Node ID 2b8253dbde297a858c934316c8abb2f97bd60a06 # Parent e7ffcc22ed5f31c2d2b9ecb670cb4d54fabda931 display.texi (Auto Faces): Say fontification-functions is called whether or not Font Lock is enabled. Tidy up the wording a bit. diff -r e7ffcc22ed5f -r 2b8253dbde29 doc/lispref/ChangeLog --- a/doc/lispref/ChangeLog Thu Jan 28 21:09:25 2010 +0800 +++ b/doc/lispref/ChangeLog Thu Jan 28 16:24:50 2010 +0000 @@ -1,3 +1,8 @@ +2010-01-28 Alan Mackenzie + + * display.texi (Auto Faces): Say fontification-functions is called + whether or not Font Lock is enabled. Tidy up the wording a bit. + 2010-01-17 Chong Yidong * elisp.texi: Remove duplicate edition information (Bug#5407). diff -r e7ffcc22ed5f -r 2b8253dbde29 doc/lispref/display.texi --- a/doc/lispref/display.texi Thu Jan 28 21:09:25 2010 +0800 +++ b/doc/lispref/display.texi Thu Jan 28 16:24:50 2010 +0000 @@ -2654,23 +2654,25 @@ @defvar fontification-functions This variable holds a list of functions that are called by Emacs -redisplay as needed to assign faces automatically to text in the buffer. +redisplay as needed, just before doing redisplay. They are called even +when Font Lock Mode isn't enabled. When Font Lock Mode is enabled, this +variable usually holds just one function, @code{jit-lock-function}. The functions are called in the order listed, with one argument, a -buffer position @var{pos}. Each function should attempt to assign faces -to the text in the current buffer starting at @var{pos}. - -Each function should record the faces they assign by setting the -@code{face} property. It should also add a non-@code{nil} -@code{fontified} property for all the text it has assigned faces to. +buffer position @var{pos}. Collectively they should attempt to assign +faces to the text in the current buffer starting at @var{pos}. + +The functions should record the faces they assign by setting the +@code{face} property. They should also add a non-@code{nil} +@code{fontified} property to all the text they have assigned faces to. That property tells redisplay that faces have been assigned to that text already. -It is probably a good idea for each function to do nothing if the +It is probably a good idea for the functions to do nothing if the character after @var{pos} already has a non-@code{nil} @code{fontified} property, but this is not required. If one function overrides the -assignments made by a previous one, the properties as they are -after the last function finishes are the ones that really matter. +assignments made by a previous one, the properties after the last +function finishes are the ones that really matter. For efficiency, we recommend writing these functions so that they usually assign faces to around 400 to 600 characters at each call.