mirror of
https://gitlab.archlinux.org/archlinux/aurweb.git
synced 2025-02-03 10:43:03 +01:00
Support headings in package comments
Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
This commit is contained in:
parent
dec9077339
commit
e4dcd913d1
1 changed files with 18 additions and 2 deletions
|
@ -67,6 +67,20 @@ class GitCommitsExtension(markdown.extensions.Extension):
|
||||||
md.preprocessors.add('git-commits', preprocessor, '_end')
|
md.preprocessors.add('git-commits', preprocessor, '_end')
|
||||||
|
|
||||||
|
|
||||||
|
class HeadingTreeprocessor(markdown.treeprocessors.Treeprocessor):
|
||||||
|
def run(self, doc):
|
||||||
|
for elem in doc:
|
||||||
|
if elem.tag == 'h1':
|
||||||
|
elem.tag = 'h5'
|
||||||
|
elif elem.tag in ['h2', 'h3', 'h4', 'h5']:
|
||||||
|
elem.tag = 'h6'
|
||||||
|
|
||||||
|
|
||||||
|
class HeadingExtension(markdown.extensions.Extension):
|
||||||
|
def extendMarkdown(self, md, md_globals):
|
||||||
|
md.treeprocessors.add('heading', HeadingTreeprocessor(md), '_end')
|
||||||
|
|
||||||
|
|
||||||
def get_comment(conn, commentid):
|
def get_comment(conn, commentid):
|
||||||
cur = conn.execute('SELECT PackageComments.Comments, PackageBases.Name '
|
cur = conn.execute('SELECT PackageComments.Comments, PackageBases.Name '
|
||||||
'FROM PackageComments INNER JOIN PackageBases '
|
'FROM PackageComments INNER JOIN PackageBases '
|
||||||
|
@ -88,8 +102,10 @@ def main():
|
||||||
text, pkgbase = get_comment(conn, commentid)
|
text, pkgbase = get_comment(conn, commentid)
|
||||||
html = markdown.markdown(text, extensions=['fenced_code',
|
html = markdown.markdown(text, extensions=['fenced_code',
|
||||||
LinkifyExtension(),
|
LinkifyExtension(),
|
||||||
GitCommitsExtension(pkgbase)])
|
GitCommitsExtension(pkgbase),
|
||||||
allowed_tags = bleach.sanitizer.ALLOWED_TAGS + ['p', 'pre']
|
HeadingExtension()])
|
||||||
|
allowed_tags = bleach.sanitizer.ALLOWED_TAGS + \
|
||||||
|
['p', 'pre', 'h4', 'h5', 'h6']
|
||||||
html = bleach.clean(html, tags=allowed_tags)
|
html = bleach.clean(html, tags=allowed_tags)
|
||||||
save_rendered_comment(conn, commentid, html)
|
save_rendered_comment(conn, commentid, html)
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue