from nhentai.logger import logger
from nhentai.utils import format_filename
+MAX_FIELD_LENGTH = 100
EXT_MAP = {
'j': 'jpg',
'p': 'png',
return ''
+def trunk_string(string):
+ if len(string) >= MAX_FIELD_LENGTH:
+ string = string[:MAX_FIELD_LENGTH] + u'…'
+
+ return string
+
+
class Doujinshi(object):
def __init__(self, name=None, pretty_name=None, id=None, img_id=None,
ext='', pages=0, name_format='[%i][%a][%t]', **kwargs):
name_format = name_format.replace('%i', str(self.id))
name_format = name_format.replace('%a', self.info.artists)
- name_format = name_format.replace('%t', self.name)
- name_format = name_format.replace('%p', self.pretty_name)
- name_format = name_format.replace('%s', self.info.subtitle)
+
+ name_format = name_format.replace('%t', trunk_string(self.name))
+ name_format = name_format.replace('%p', trunk_string(self.pretty_name))
+ name_format = name_format.replace('%s', trunk_string(self.info.subtitle))
self.filename = format_filename(name_format)
self.table = [
while filename.endswith('.'):
filename = filename[:-1]
- if len(filename) > 100:
- filename = filename[:100] + u'…'
+ # limit 254 chars
+ if len(filename) >= 255:
+ filename = filename[:254] + u'…'
# Remove [] from filename
filename = filename.replace('[]', '').strip()