View Single Post
Old 11-20-2011, 12:34 PM   #9
nickredding
onlinenewsreader.net
nickredding knows the difference between 'who' and 'whom'nickredding knows the difference between 'who' and 'whom'nickredding knows the difference between 'who' and 'whom'nickredding knows the difference between 'who' and 'whom'nickredding knows the difference between 'who' and 'whom'nickredding knows the difference between 'who' and 'whom'nickredding knows the difference between 'who' and 'whom'nickredding knows the difference between 'who' and 'whom'nickredding knows the difference between 'who' and 'whom'nickredding knows the difference between 'who' and 'whom'nickredding knows the difference between 'who' and 'whom'
 
Posts: 328
Karma: 10143
Join Date: Dec 2009
Location: Phoenix, AZ & Victoria, BC
Device: Kindle 3, Kindle Fire, IPad3, iPhone4, Playbook, HTC Inspire
Quote:
Originally Posted by kovidgoyal View Post
Committed code to set 501 for periodicals.
There's still a problem with the fix. Calibre-generated periodicals all have the MOBI type set to 0x103 which results in EXTH[501]=MAGZ instead of NWPR. This causes the Fire to display the periodical TOC as a linear list of articles without a drop-down menu to jump to a specific section. I suspect the MAGZ classification is intended for periodicals that have only one section. For multi-section periodicals we really need EXTH[501]=NWPR.

I looked at the code and I see
Code:
        if oeb.metadata.publication_type:
            x = unicode(oeb.metadata.publication_type[0]).split(':')
            if len(x) > 1:
                pt = x[1].lower()
        self.publication_type = pt
and then the MOBI type is set as
Code:
{'newspaper':0x101}.get(self.publication_type, 0x103)
so obviously the oeb.metadata.publication_type isn't being set to 'newspaper' since the type always ends up as 0x103.

I don't see any preferences that would affect oeb.metadata.publication_type, so I suspect there needs to be a change to ensure multi-section periodicals get the type 0x101, or make all periodicals (0x101 and 0x103) have EXTH[501]=NWPR.
nickredding is offline   Reply With Quote