WSGI commenting middleware
To use
Make a factory wrapping your app in the commentator middleware. Currently, commentator only pickles comments. To the constructor of Commentator, pass a database (the path to the pickle) and a pattern. The pattern is in the form of
<URL pattern>#<xpath pattern> -> URL
The URL pattern is a python regular expression to match against the request’s PATH_INFO.
The xpath pattern is where you want to place the comments on the page. See http://www.w3schools.com/XPath/ for more about xpath expressions.
The URL is a python string template that is substituted for groups in the URL regular expression and element attributes in the found nodes. The element attributes are referenced by name (${id}, ${class}, etc) and the groups are referenced by number (${1}, …).
Example
A reference implementation is illustrated in the commentator.ini file. This uses the pattern:
commentator.pattern = (.*)#.//div[@id='comment_on_this'] -> ${1}
What this pattern says is
comment on every PATH_INFO (.*)
append the rendered content template to div[@id='comment_on_this']
reference the PATH_INFO as the canonical URL ${1}
To comment on every HTML page at the end of the body, you would use
commentator.pattern = (.*)#.//body -> ${1}
A more complex example is in the .ini file, commented out, for use with bitsyblog :
commentator.pattern = /blog/.*#.//div[@class='blog-entry'] -> /blog/${id}
This pattern says:
comment on all paths under blog
put the comments at the end of each div[@class='blog-entry']
get the URI from the div’s id, not from the PATH_INFO
TODO
This is very alpha. I’d be happy to work more on this if anyone wants it. A few outstanding issues:
fix weird lxml issue where you have to put .// for elements
allow commenting on multiple resources (multiple patterns per instance)
locking pickle files
fix couch….not sure what’s wrong
allow use of CSS classes, not just xpath
–
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file commentator-0.1.tar.gz.
File metadata
- Download URL: commentator-0.1.tar.gz
- Upload date:
- Size: 5.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0898f004849eaab1fab72b0235721961a3df9d82a45b70347258b4cc2f72a950
|
|
| MD5 |
48730b75e48be7d8cb9248ff0ba7748e
|
|
| BLAKE2b-256 |
d88c9519668b415d9bb7ccd4b56e00ec86d86b3049f7f68e1005b728a269e1c2
|