View Full Version : NCX creation -- nested or not, css classes


illustrata
08-25-2010, 06:24 AM
I would like to create a nested ncx for epub and an flat ncs for Kindle/mobi (I understand Kindle does not support nested ncx).

Will both these files need to be created manually? Are they output from any converter? Or can I create an ePub and then convert it to a Kindle mobi (using Kindlegen or other converter) or vice-versa and end up with a valid ncx?

I notice in the Kindlegen Sample folder that the ncx is a) nested and b) has class definitions -- although I can't find any css with those definitions in it. Can an ncx utilize css in one version and not in another? If a class can be included, where would the css go?

(Should this thread be posted elsewhere?)

Thanks very much for any help.

charleski
08-25-2010, 07:28 AM
The great thing about Amazon owning the .mobi format is that it can merrily fail to document it properly and cause people to waste a lot of time scratching their heads.

Since the Kindlegen sample contains nested navpoint entries I think you can assume that those will work fine on the Kindle and that you don't need to convert ncx files made for epub. The class definitions in the ncx make no sense at all - 'class' is not an allowed attribute for navpoints and the selectors aren't defined in the sample's css. I would suggest not bothering about them.

illustrata
08-25-2010, 08:37 AM
Complete, definitive documentation. If we had it, half of us would not have work. (Couldn't imagine where the classes would be defined.)

I'll get these ebooks created according to your assumptions, and report back with the results. Thank you for answering so quickly. :)

charleski
08-25-2010, 08:56 AM
Frankly, I suspect Amazon is trying to do something "clever" by giving navpoints a class to indicate which type of entry they are: chapter, part, etc so their reader can respond to a 'next chapter' command in a future version. This should be obvious from the ncx hierarchy, though, and in the absence of any documentation for this "feature" it's best to ignore it.