ANN: empy 1.3 -- Embed Python in template text as markup

Erik Max Francis max at alcyone.com
Sat Aug 24 19:51:44 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 and chainable
    filters.  The system is highly configurable via command line
    options.

    Expressions are embedded in text with the '@(...)' notation; 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 '@{...}'.  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.  '@[...?...:...]' allows
    for conditional expressions, and '@<...:...>' allows handling of
    exceptions thrown from expressions.  Finally, a '@@' sequence
    expands to a single literal at sign.


Getting the software

    The current version of empy is 1.3.

    The latest version of the software is available in a tarball here:
    http://www.alcyone.com/pyos/empy/empy-latest.tar.gz.

    The official URL for this Web site is
    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.2]

    - 1.3; 2002 Aug 24.  Pseudomodule as true instance; move toward
      more verbose (and clear) pseudomodule functions; fleshed out
      diversion model; filters; conditional expressions with '@[...]';
      protected expressions with '@<...>'; preprocessing with '-P' (in
      preparation for possible support for command line arguments).


-- 
 Erik Max Francis / max at alcyone.com / http://www.alcyone.com/max/
 __ San Jose, CA, US / 37 20 N 121 53 W / ICQ16063900 / &tSftDotIotE
/  \ There is nothing so subject to the inconstancy of fortune as war.
\__/ Miguel de Cervantes
    Church / http://www.alcyone.com/pyos/church/
 A lambda calculus explorer in Python.



More information about the Python-list mailing list