emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] ePub construction


From: Nick Dokos
Subject: Re: [O] ePub construction
Date: Tue, 13 Dec 2011 20:42:38 -0500

Alan L Tyree <address@hidden> wrote:

> G'day,
> 
> Here are the modifications that I needed to make to the exported html 
> file (using the standard exporter) in order to get a valid ePub 
> document. http://threepress.org/document/epub-validate provides an 
> on-line validation service.
> 
> My document is relatively simple, but does have footnotes, citations 
> and formatting commands.
> 
> I will be happy to add a fuller description to worg if someone will 
> point me to some instructions.
> 
> 
> 1. Make the html file have utf-8 encoding; there are probably several 
> ways to do this, but I used the emacs23 menu MULE options on the org 
> document.
> 
> 2 Change the language statement by removing the "lang=" attribute:
> 
> From: <html xmlns="http://www.w3.org/1999/xhtml"; lang="en" 
> xml:lang="en">
> 
> To: <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
> 
> 3 Change anchor descriptions associated with section headings by
>    removing "name=" entries, for example,
> 
> From: <a name="sec-1" id="sec-1"></a>
> 
> To: <a id="sec-1"></a>
> 
> NOTE: this can now be done by customising org-export-html-headline-
> anchor-format (Thanks Bastien!!)
> 
> 4. Change anchor class="footref" by replacing "name=" with "id=". For
>    example:
> 
> from: <a class="footref" name="fnr.2" href="#fn.2">
> 
> to: <a class="footref" id="fnr.2" href="#fn.2">
> 
> 5. Change anchor class="footnum" by replacing "name=" with "id=". For
>    example:
> 
> from: <a class="footnum" name="fn.1" href="#fnr.1">1</a>
> 
> to: <a class="footnum" id="fn.1" href="#fnr.1">1</a>
> 

Interesting - I downloaded the epub validator, ran Calibre on a silly
little org-produced HTML file and duplicated your "lang" problem.

AFAICT, all of the problems you mention above are legal HTML4, so either
the epub spec (which I have not looked at: do you have a pointer?) is
made to trip people up by enforcing restrictions that they dreamed up,
or the validator is not quite as smart as it should be.

Just for kicks, I ran it against the Calibre Quick Start Guide (the only
"real" ebook I had access to) and it gave me an error :-)

,----
| Epubcheck Version 3.0b3
| 
| ERROR: Calibre Quick Start Guide - John 
Schember.epub/OEBPS/content.opf(5,57): attribute "file-as" not allowed here; 
expected attribute "id", "opf:file-as", "opf:role" or "xml:lang"
| 
| Check finished with warnings or errors!
`----

so, presuming that the ebook is "fine", I'm not sure how seriously to
take the validator.

Nick

PS In case it's not obvious, all I know about ebooks is what is
   contained in this email. Caveat emptor.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]