Skip to main content

Meld3-like templating using lxml

Project description

A mostly-compatible implementation of Meld3 using lxml as the parsing and serialisation engine.

I previously forked Meld3 and made it use lxml, but the code wasn’t elegant as it didn’t use much of lxml’s additional features. This version is a from-the-ground-up rewrite based on the Meld3 documentation and test suite.

Key Differences

  • fillmeldhtmlform() is not implemented (it’s rather too magic)
  • findwithattrib is not implemented (as unclear how it interacts with namespaces; use lxml’s finders or xpath)
  • replace() follows the meld3 syntax; the lxml call of the same name is renamed replace_child()
  • The property parent doesn’t exist; use getparent()
  • You can pass lxml Elements or lists of Elements to replace(), content() and fillmelds()
  • When using structure=True the content must be broadly parsable as XML
  • repeat inserts adjacent to the original node, not at the end of the parent
  • doctypes to the write_* functions can be plain strings

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for lxmlmeld, version 0.5
Filename, size File type Python version Upload date Hashes
Filename, size lxmlmeld-0.5.tar.gz (5.9 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page