Sanitize one-liner strings

Fixes #26
main
Fabien Benureau 9 years ago
parent b6e8139bc3
commit ec98221d1c

@ -1,9 +1,16 @@
# display formatting
import re
from . import color
from .bibstruct import TYPE_KEY
CHARS = re.compile('[{}\n\t\r]')
def sanitize(s):
return CHARS.sub('', s)
# should be adaptated to bibtexparser dicts
def person_repr(p):
raise NotImplementedError
@ -32,13 +39,13 @@ def bib_oneliner(bibdata):
elif bibdata[TYPE_KEY] == 'inproceedings':
journal = ' ' + bibdata.get('booktitle', '')
return u'{authors} \"{title}\"{journal}{year}'.format(
return sanitize(u'{authors} \"{title}\"{journal}{year}'.format(
authors=color.dye_out(authors, 'author'),
title=color.dye_out(bibdata.get('title', ''), 'title'),
journal=color.dye_out(journal, 'publisher'),
year=' ({})'.format(color.dye_out(bibdata['year'], 'year'))
if 'year' in bibdata else ''
)
))
def bib_desc(bib_data):

Loading…
Cancel
Save