mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
EPUB Output: Ensure that language setting is conformant to the specs
This commit is contained in:
parent
f861a14a08
commit
b688d39934
@ -2347,7 +2347,7 @@ class ITUNES(DriverBase):
|
|||||||
self.log.info(" add timestamp: %s" % metadata.timestamp)
|
self.log.info(" add timestamp: %s" % metadata.timestamp)
|
||||||
|
|
||||||
# Force the language declaration for iBooks 1.1
|
# Force the language declaration for iBooks 1.1
|
||||||
metadata.language = get_lang()
|
metadata.language = get_lang().replace('_', '-')
|
||||||
if DEBUG:
|
if DEBUG:
|
||||||
self.log.info(" rewriting language: <dc:language>%s</dc:language>" % metadata.language)
|
self.log.info(" rewriting language: <dc:language>%s</dc:language>" % metadata.language)
|
||||||
|
|
||||||
|
@ -92,7 +92,7 @@ class CHMInput(InputFormatPlugin):
|
|||||||
metadata.add('identifier', mi.isbn, attrib={'scheme':'ISBN'})
|
metadata.add('identifier', mi.isbn, attrib={'scheme':'ISBN'})
|
||||||
if not metadata.language:
|
if not metadata.language:
|
||||||
oeb.logger.warn(u'Language not specified')
|
oeb.logger.warn(u'Language not specified')
|
||||||
metadata.add('language', get_lang())
|
metadata.add('language', get_lang().replace('_', '-'))
|
||||||
if not metadata.creator:
|
if not metadata.creator:
|
||||||
oeb.logger.warn('Creator not specified')
|
oeb.logger.warn('Creator not specified')
|
||||||
metadata.add('creator', _('Unknown'))
|
metadata.add('creator', _('Unknown'))
|
||||||
|
@ -329,7 +329,7 @@ class HTMLInput(InputFormatPlugin):
|
|||||||
metadata.add('identifier', mi.isbn, attrib={'scheme':'ISBN'})
|
metadata.add('identifier', mi.isbn, attrib={'scheme':'ISBN'})
|
||||||
if not metadata.language:
|
if not metadata.language:
|
||||||
oeb.logger.warn(u'Language not specified')
|
oeb.logger.warn(u'Language not specified')
|
||||||
metadata.add('language', get_lang())
|
metadata.add('language', get_lang().replace('_', '-'))
|
||||||
if not metadata.creator:
|
if not metadata.creator:
|
||||||
oeb.logger.warn('Creator not specified')
|
oeb.logger.warn('Creator not specified')
|
||||||
metadata.add('creator', self.oeb.translate(__('Unknown')))
|
metadata.add('creator', self.oeb.translate(__('Unknown')))
|
||||||
|
@ -1069,7 +1069,8 @@ class OPFCreator(MetaInformation):
|
|||||||
dc_attrs={'id':__appname__+'_id'}))
|
dc_attrs={'id':__appname__+'_id'}))
|
||||||
if getattr(self, 'pubdate', None) is not None:
|
if getattr(self, 'pubdate', None) is not None:
|
||||||
a(DC_ELEM('date', self.pubdate.isoformat()))
|
a(DC_ELEM('date', self.pubdate.isoformat()))
|
||||||
a(DC_ELEM('language', self.language if self.language else get_lang()))
|
a(DC_ELEM('language', self.language if self.language else
|
||||||
|
get_lang().replace('_', '-')))
|
||||||
if self.comments:
|
if self.comments:
|
||||||
a(DC_ELEM('description', self.comments))
|
a(DC_ELEM('description', self.comments))
|
||||||
if self.publisher:
|
if self.publisher:
|
||||||
@ -1194,7 +1195,8 @@ def metadata_to_opf(mi, as_string=True):
|
|||||||
factory(DC('identifier'), mi.isbn, scheme='ISBN')
|
factory(DC('identifier'), mi.isbn, scheme='ISBN')
|
||||||
if mi.rights:
|
if mi.rights:
|
||||||
factory(DC('rights'), mi.rights)
|
factory(DC('rights'), mi.rights)
|
||||||
factory(DC('language'), mi.language if mi.language and mi.language.lower() != 'und' else get_lang())
|
factory(DC('language'), mi.language if mi.language and mi.language.lower()
|
||||||
|
!= 'und' else get_lang().replace('_', '-'))
|
||||||
if mi.tags:
|
if mi.tags:
|
||||||
for tag in mi.tags:
|
for tag in mi.tags:
|
||||||
factory(DC('subject'), tag)
|
factory(DC('subject'), tag)
|
||||||
|
@ -131,7 +131,7 @@ class OEBReader(object):
|
|||||||
stream = cStringIO.StringIO(etree.tostring(opf))
|
stream = cStringIO.StringIO(etree.tostring(opf))
|
||||||
mi = MetaInformation(OPF(stream))
|
mi = MetaInformation(OPF(stream))
|
||||||
if not mi.language:
|
if not mi.language:
|
||||||
mi.language = get_lang()
|
mi.language = get_lang().replace('_', '-')
|
||||||
self.oeb.metadata.add('language', mi.language)
|
self.oeb.metadata.add('language', mi.language)
|
||||||
if not mi.title:
|
if not mi.title:
|
||||||
mi.title = self.oeb.translate(__('Unknown'))
|
mi.title = self.oeb.translate(__('Unknown'))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user