(tempo-insert-template): Check for zmacs-regions.
Wrapped it in unwind-protect.
(tempo-save-named): New function.
(tempo-insert-prompt): Added NO-INSERT parameter.
Handles previous values better. Cleaned up interface.
Check for already saved value.
(tempo-remember-insertion): Function deleted.
(tempo-insert-named): Use tempo-insert if data is not a string.
Use tempo-lookup-named.
(tempo-insert-prompt-compat): New function.
(tempo-lookup-named): New function.
(tempo-insert-named): Checks for valid name, insert mark otherwise.
(tempo-dolist): Changed (cadr ...) to (car (cdr ...))
(tempo-expand-if-complete): New function
Expansion around region now puts point at the first mark.
(tempo-region-start, tempo-region-stop): New variables
(tempo-insert-template, tempo-insert): Don't affect the
mark. Check for Transient Mark mode
(tempo-find-match-string): Removed the stupid 1+ again
(tempo-use-tag-list): Set tempo-match-finder to completion-function.
(tempo-match-finder): Renamed variable from
tempo-default-match-finder. Change the value too.
(tempo-collection, tempo-dirty-collection): New variables.
(tempo-user-elements): New variable.
(tempo-insert): New argument ON-REGION.
New elements 'l and 'r. Use tempo-is-user-element.
(tempo-is-user-element): New function.
(tempo-invalidate-collection, tempo-build-collection): New functions.
(tempo-find-match-string): Reinserted bugfix for re-search-backward.
(tempo-complete-tag): Complete rewrite.
(tempo-insert): Added the 'o tag.
tempo-leave-completion-buffer): New variables.
(tempo-complete-tag): Added a completion buffer mechanism.
(tempo-display-completions): New function.
(tempo-insert-template): An extension to the (p ...) tag
enables named insertion for later insertion using a (s ...) tag.