*** lazy-lock
The lazy-lock package speeds up Font Lock mode by making fontification occur only when necessary, such as when a previously unfontified part of the buffer becomes visible in a window. When you create a buffer with Font Lock mode and Lazy Lock mode turned on, the buffer is not fontified. When certain events occur (such as scrolling), Lazy Lock makes sure that the visible parts of the buffer are fontified. Lazy Lock also defers on-the-fly fontification until Emacs has been idle for a given amount of time.

To use this package, put in your ~/.emacs:

(setq font-lock-support-mode 'lazy-lock-mode)

To control the package behaviour, see the documentation for `lazy-lock-mode'.