Next: Hippie Expand, Previous: QuickURL, Up: Top

## 11 Tempo: Flexible Template Insertion

The Tempo package provides a simple way to define powerful templates, or macros, if you wish. It is mainly intended for, but not limited to, programmers to be used for creating shortcuts for editing certain kinds of documents.

A template is defined as a list of items to be inserted in the current buffer at point. Some can be simple strings, while others can control formatting or define special points of interest in the inserted text. `M-x tempo-backward-mark` and `M-x tempo-forward-mark` can be used to jump between such points.

More flexible templates can be created by including Lisp symbols, which will be evaluated as variables, or lists, which will be evaluated as Lisp expressions. Automatic completion of specified tags to expanded templates can be provided.

See the documentation for `tempo-define-template` for the different items that can be used to define a tempo template with a command for inserting it.

See the commentary in `tempo.el` for more information on using the Tempo package.