ANN: empy 1.5 -- Embed Python in template text as markup
Erik Max Francis
max at alcyone.com
Wed Sep 18 17:42:13 EDT 2002
Summary
empy is a system for embedding Python expressions and statements
in template text; it takes empy source files, processes them, and
produces output. This is accomplished via expansions, which are
special signals to the empy system and are set off by a special
prefix (by default the at sign, '@'). empy can expand arbitrary
Python expressions and statements in this way, as well as a
variety of special forms. Textual data not explicitly delimited
in this way is sent unaffected to the output, allowing Python to
be used in effect as a markup language. Also supported are
recording and playback via diversions and dynamic, chainable
filters. The system is highly configurable via command line
options.
Expressions are embedded in text with the '@(...)' notation;
variations include conditional expressions ('@(...?...:...)') and
the ability to handle thrown exceptions ('@(...$...)'). As a
shortcut, simple variables and expressions can be abbreviated as
'@variable', '@object.attribute', '@function(arguments)',
'@sequence' [index], and combinations. Full-fledged statements
are embedded with '@{...}'. Forms of conditional and repeated
expansion are available via '@[...]'. A '@' followed by a
whitespace character (including a newline) expands to nothing,
allowing string concatenations and line continuations. Comments
are indicated with '@#' and consume the rest of the line, up to
and including the trailing newline. '@%' indicate optional
"significators," which are special forms of variable assignment
intended to specify per-file identification information in a
format which is easy to parse externally. Finally, a '@@'
sequence expands to a single literal at sign.
Getting the software
The current version of empy is 1.5.
The latest version of the software is available in a tarball here:
"http://www.alcyone.com/pyos/empy/empy-latest.tar.gz",
http://www.alcyone.com/pyos/empy/empy-latest.tar.gz.
The official URL for this Web site is
"http://www.alcyone.com/pyos/empy/",
http://www.alcyone.com/pyos/empy/.
Requirements
empy should work with any version of Python from 1.5.x onward.
License
This code is released under the "GPL",
http://www.gnu.org/copyleft/gpl.html.
...
Release history [since 1.4]
- 1.5; 2002 Sep 18. Escape codes ('@\...'); conditional and
repeated expansion substitutions via '@[if E: ...]', '@[for X in
E: ...]', and '@[while E: ....]' notations; fix a few bugs
involving files which do not end in newlines.
--
Erik Max Francis / max at alcyone.com / http://www.alcyone.com/max/
__ San Jose, CA, US / 37 20 N 121 53 W / ICQ16063900 / &tSftDotIotE
/ \ I am the king of sorrow
\__/ Sade
EmPy / http://www.alcyone.com/pyos/empy/
A system for embedding arbitrary Python in template text as markup.
More information about the Python-list
mailing list