-#!/usr/bin/env python2
+#!/usr/bin/env python3
"""Creates a webpage with all entries of a .bib file"""
__version__ = "1.0"
return ""
def format_author(a):
- return ' '.join(' '.join(p) for p in (a.first(), a.middle(), a.prelast(), a.last(), a.lineage()) if p)
+ return ' '.join(' '.join(p) for p in (a.first_names, a.middle_names, a.prelast_names, a.last_names, a.lineage_names) if p)
def format_authors(entry):
return ", ".join([format_author(a) for a in entry.persons['author']])
return "<br/>\n".join(lines)
-def entryCompareDate(p1, p2):
- k1, e1 = p1
- k2, e2 = p2
+def entryDateSortKey(p):
+ k, e = p
-
- def toStr(e):
- month2num = { 'jan' : '01', 'feb' : '02', 'mar' : '03', \
- 'apr' : '04', 'may' : '05', 'jun' : '06', \
- 'jul' : '07', 'aug' : '08', 'sep' : '09', \
- 'oct' : '10', 'nov' : '11', 'dec' : '12'}
- month = e.fields['month'].lower()[0:3]
- if month in month2num:
- month = month2num[month]
- else:
- month = ""
- return e.fields['year'] + "-" + month
-
- return cmp(toStr(e1), toStr(e2))
+ month2num = { 'jan' : '01', 'feb' : '02', 'mar' : '03', \
+ 'apr' : '04', 'may' : '05', 'jun' : '06', \
+ 'jul' : '07', 'aug' : '08', 'sep' : '09', \
+ 'oct' : '10', 'nov' : '11', 'dec' : '12'}
+ month = e.fields['month'].lower()[0:3]
+ if month in month2num:
+ month = month2num[month]
+ else:
+ month = ""
+ return e.fields['year'] + "-" + month
def usage():
print("<h2>" + year + "</h2>")
- iteritems = list(entries.iteritems())
- iteritems.sort(cmp=entryCompareDate, reverse=True)
+ iteritems = list(entries.items())
+ iteritems.sort(key=entryDateSortKey, reverse=True)
for key, entry in iteritems:
if entry.fields['year'] != year:
print("<div class=bibentry>")
print("<a class=bibentry_key id=" + key + ">[" + key + "]</a><br/>")
- print(format_entry(entry).encode('utf8'))
+ e = format_entry(entry)
+ print(e)
print("</div>\n")