summaryrefslogtreecommitdiff
path: root/docs/modules
diff options
context:
space:
mode:
authorMarat Radchenko <marat@slonopotamus.org>2024-01-16 11:12:02 -0800
committerGitHub <noreply@github.com>2024-01-16 22:12:02 +0300
commit394ec4cd5283725f1e1c92fde8266524b26aebfd (patch)
tree6fd7745d1b254a75b3f95fc4691b368a0a77a0ef /docs/modules
parentaec6be126965f622624f611070645fc1931bf18a (diff)
Drop MOBI support (#458)
Amazon is slowly killing it, it's just a question of time when it fully dies. References: * https://kdp.amazon.com/en_US/help/topic/GULSQMHU5MNH4EZM > Starting August 1, 2021, we will no longer support MOBI files for reflowable eBooks. Use EPUB, DOCX or KPF to publish new or update reflowable eBooks. * https://www.amazon.com/gp/help/customer/display.html?nodeId=G5WYD9SAF7PGXRNA > Beginning in late 2022, you'll no longer be able to send MOBI (.AZW, .MOBI) files to your Kindle library using Send to Kindle. This change won't affect any MOBI files already in your Kindle library. You can still read them with Kindle. MOBI is an older file format and won't support the newest Kindle features for documents. * https://www.reddit.com/r/kindle/comments/16rw6e3/amazon_announcement_about_mobi_support_timeline/ > We will end all Send to Kindle support for MOBI files by December 20, 2023. * https://www.mobileread.com/forums/showthread.php?t=336365 > Does anyone still have Kindle Previewer installer older than 3.49 that you could share? The reason I am looking for it is because newer versions no longer open .mobi files.
Diffstat (limited to 'docs/modules')
-rw-r--r--docs/modules/ROOT/pages/index.adoc176
1 files changed, 11 insertions, 165 deletions
diff --git a/docs/modules/ROOT/pages/index.adoc b/docs/modules/ROOT/pages/index.adoc
index 90a84a8..66d658d 100644
--- a/docs/modules/ROOT/pages/index.adoc
+++ b/docs/modules/ROOT/pages/index.adoc
@@ -10,9 +10,6 @@ Dan Allen <https://github.com/mojavelinux[@mojavelinux]>; Sarah White <https://g
:uri-idpf: http://www.idpf.org/
:uri-epub: http://www.idpf.org/epub/31/spec/epub-spec.html
:uri-epubcheck: https://github.com/w3c/epubcheck
-:uri-kindlegen: https://www.amazon.com/gp/feature.html?docId=1000765211
-:uri-kf8: http://www.amazon.com/gp/feature.html?docId=1000729511
-:uri-send-to-kindle: https://www.amazon.com/gp/sendtokindle/
:uri-metadata-elem: http://www.idpf.org/epub/30/spec/epub30-publications.html#sec-metadata-elem
:uri-dc: https://www.dublincore.org/specifications/dublin-core/dces/2004-12-20/
:uri-github-guides: https://guides.github.com
@@ -21,11 +18,11 @@ Dan Allen <https://github.com/mojavelinux[@mojavelinux]>; Sarah White <https://g
:uri-epubreadingsystem: http://www.idpf.org/epub/301/spec/epub-contentdocs.html#app-epubReadingSystem
:uri-android-sdk: https://developer.android.com/sdk/index.html
-{project-name} is a set of Asciidoctor extensions for converting AsciiDoc documents directly to the EPUB3 and KF8/MOBI e-book formats.
+{project-name} is a set of Asciidoctor extensions for converting AsciiDoc documents directly to the EPUB3 e-book format.
== Introduction
-{project-name} is not merely a converter from AsciiDoc to EPUB3 and KF8/MOBI.
+{project-name} is not merely a converter from AsciiDoc to EPUB3.
Rather, it's a tool for creating highly aesthetic, professional, _easy-to-read_ e-books.
Let's face it, many of the technical e-books out there--especially those produced from software documentation--are *_hideous_*.
{project-name} is on a mission to disrupt the status quo.
@@ -59,10 +56,12 @@ Polish, Polish, and More Polish::
We believe that the e-books produced by {project-name} are the _very best_ output you can expect to find in digital publishing today.
Of course, there's always room for improvement, so we'll continue to work with you to achieve and maintain this goal.
+{project-name} only produces variable layout (i.e., reflowable) EPUB3 documents since this layout is best suited for the types of documents typically written in AsciiDoc.
+We may explore the use of fixed layout documents in the future if the need arises.
+
=== Notable Features
* Direct AsciiDoc to EPUB3 conversion
-* Direct AsciiDoc to KF8/MOBI conversion
* Highly-aesthetic and readable styles with optimized text legibility
* Respects font settings (if supported by the e-reader) without altering headings, code or icons
* EPUB3 metadata, manifest and spine (assembled by Gepub)
@@ -76,23 +75,6 @@ Of course, there's always room for improvement, so we'll continue to work with y
* Support for SVG images in the content
* Stem blocks via AsciiMath
-=== Project Status
-
-CAUTION: {project-name} is currently _alpha_ software.
-Use accordingly.
-Although the bulk of AsciiDoc content is converted, there's still work needed to fill in gaps where conversion is incomplete or unstyled.
-
-NOTE: {project-name} only produces variable layout (i.e., reflowable) EPUB3 documents since this layout is best suited for the types of documents typically written in AsciiDoc.
-We may explore the use of fixed layout documents in the future if the need arises.
-
-== Converter Workflow
-
-{project-name} takes an aggregate AsciiDoc document and any assets it references as input and produces an EPUB3 publication archive (often described as a “website in a box”).
-
-{project-name} can also produce KF8/MOBI files, the format required for viewing on Amazon Kindle.
-The conversion to KF8/MOBI is performed by generating a slightly modified EPUB3 publication, then passing it through the {uri-kindlegen}[KindleGen] application.
-The EPUB3 publication, which can be thought of as the “digital master”, is altered to adhere to certain Amazon Kindle requirements.
-
== Structuring your Manuscript
An EPUB3 archive is composed of multiple files. The content of each “chapter” is typically stored in a dedicated XHTML file.
@@ -289,20 +271,11 @@ Suggested values include: book (default), article.
|Sets the depth of table of contents metadata. If not set, defaults to `:toclevels:`
|===
-When using the EPUB3 converter, the `ebook-format` attribute resolves to the name of the e-book format being generated (epub3 or kf8) and the corresponding attribute `ebook-format-<name>` is defined, where `<name>` is `epub3` or `kf8`.
-You can use these attributes in a preprocessor directive if you only want to show certain content to readers using a particular device.
-For instance, if you want to display a message to readers on Kindle, you can use:
-
-[source,asciidoc]
-----
-\ifdef::ebook-format-kf8[Hello Kindle reader!]
-----
-
With that out of the way, it's time to convert the AsciiDoc document directly to EPUB3.
== Performing the Conversion
-You can convert AsciiDoc documents to EPUB3 and KF8/MOBI from the command line using the `asciidoctor-epub3` script provided with the {project-name} project.
+You can convert AsciiDoc documents to EPUB3 from the command line using the `asciidoctor-epub3` script provided with the {project-name} project.
=== Convert AsciiDoc to EPUB3
@@ -379,27 +352,6 @@ The EPUB3 file will be extracted to a directory adjacent to the generated file,
In this example, the contents of the EPUB3 will be extracted to the [path]_output/sample-book_ directory.
-=== Convert AsciiDoc to KF8/MOBI
-
-Creating a KF8/MOBI archive directly from an AsciiDoc document is done with the same generation script (`asciidoctor-epub3`).
-You just need to specify the format (`-a ebook-format`) as `kf8`.
-
- $ asciidoctor-epub3 -D output -a ebook-format=kf8 data/samples/sample-book.adoc
-
-When the script completes, you'll see the file [file]_sample-book.mobi_ as well as [file]_sample-book-kf8.epub_ (the precursor) appear in the [path]_output_ directory.
-
-KindleGen does mandatory validation, so you don't need to run the `validate` command after converting to KF8/MOBI.
-
-.What is KF8?
-****
-Kindle Format 8 (KF8) is Amazon's next generation file format offering a wide range of new features and enhancements--including HTML5 and CSS3 support--that publishers can use to create a broad range of books.
-The format is close enough to EPUB3 that it's safe to think of it simply as an EPUB3 implementation under most circumstances.
-You can read more about the format on the {uri-kf8}[Kindle Format 8 page].
-
-Amazon continues to use the _.mobi_ file extension for KF8 archives, despite the fact that they've switched from the Mobipocket format to the EPUB3-like KF8 format.
-That's why we refer to the format in this project as KF8/MOBI.
-****
-
=== Tuning Listing Captions
Unlike the built-in converters, the EPUB3 converter is configured to add a signifier (e.g., `Listing`) at the start of the caption for all listing and source blocks that have a title.
@@ -427,19 +379,9 @@ For more information about this attribute and other related attributes, see {uri
*-a ebook-extract* ::
Extracts the EPUB3 to a folder in the destination directory after the file is generated
-*-a ebook-format=<format>* ::
- Specifies the ebook format to generate (epub3 or kf8, default: epub3)
-
-*-a ebook-kindlegen-path=<path>*::
- Specifies path to KindleGen executable to use when producing KF8/Mobi.
- This attribute takes precedence over `KINDLEGEN` environment variable.
-
*-a ebook-validate* ::
Runs {uri-epubcheck}[EPUBCheck] to validate output file against the EPUB3 specification
-*-a ebook-compress=<0|1|2|none|standard|huffdic>* ::
- Controls the compression type used by kindlegen (0=none [default if unset], 1=standard [default if empty], 2=huffdic)
-
*-v, --version* ::
Display the program version
@@ -449,10 +391,6 @@ For more information about this attribute and other related attributes, see {uri
Specifies path to EPUBCheck executable to use with `-a ebook-validate`.
Effect of this variable can be overriden with `-a ebook-epubcheck-path` attribute.
-*KINDLEGEN*::
- Specifies path to KindleGen executable to use when producing KF8/Mobi.
- Effect of this variable can be overriden with `-a ebook-kindlegen-path` attribute.
-
=== EPUB3 Archive Structure
Here's a sample manifest of files found in an EPUB3 document produced by {project-name}.
@@ -548,11 +486,11 @@ To do so, use an attribute entry to set the value of the `imagesdir` attribute o
== About the Theme
-EPUB3 and KF8/MOBI files are styled using CSS3.
+EPUB3 files are styled using CSS3.
However, each e-reading platform honors a reduced set of CSS3 styles, and the styles they allow and how they implement them are rarely documented.
All we've got to say is _thank goodness for CSS hacks, media queries and years of CSS experience!_
-The theme provided with {project-name} has been crafted to display EPUB3 and KF8/MOBI files as consistently as possible across the most common EPUB3 platforms and to degrade gracefully in select EPUB2 platforms.
+The theme provided with {project-name} has been crafted to display EPUB3 files as consistently as possible across the most common EPUB3 platforms and to degrade gracefully in select EPUB2 platforms.
The theme maintains readability regardless of the reading mode (i.e., day, night or sepia) or the display device's pixel density and screen resolution.
The theme's CSS files are located in the [path]_data/style_ directory.
@@ -595,23 +533,11 @@ Follow these steps to get it set up:
$ export ADB=~/apps/android-sdk/platform-tools/adb
-Now you can use the `adb-push-ebook` script provided by {project-name} to push the EPUB3 and KF8/MOBI files to your Android device.
-
-.Publish both EPUB3 and KF8 files to Android device
- $ adb-push-ebook output/sample-book
-
-IMPORTANT: Don't include the file extension since the script will check for both .epub and .mobi files.
+Now you can use the `adb push` to push the EPUB3 files to your Android device.
-The `adb-push-ebook` script copies the files to the following locations on the device:
+.Publish EPUB3 file to Android device
+ $ adb push output/sample-book.epub /sdcard
-,===
-File type,Destination on Android device
-
-*.epub,/sdcard/
-*.mobi,/sdcard/Android/data/com.amazon.kindle/files/
-,===
-
-Amazon Kindle should immediately detect the new file and display it in your “On Device” library.
You'll have to manually import the EPUB3 into your e-reader of choice.
== E-book Reader Recommendations and Quirks
@@ -661,83 +587,3 @@ To see all the workarounds and why we chose certain style options, check out the
* `-webkit-hyphens: auto` causes Kindle for Mac (and perhaps others) to crash
* `text-rendering: optimizeLegibility` causes file to be rejected by KFP (and causes the text to disappear in some previewers)
* Kindle Direct Publishing (KDP) strips out select font-related CSS rules (e.g., `font-family`) under certain conditions (for reasons that have proved nearly impossible to reverse engineer); the known workaround is to add a layer of indirection by using `@import` to hide the CSS files from the script
-
-=== Kindle Direct Publishing
-
-If you want to publish your book to the Amazon Kindle store, and have your styles and fonts preserved, you must use https://kdp.amazon.com[Kindle Direct Publishing].
-No other method of publishing to the Amazon Kindle store will leave your book intact.
-
-This workflow also allows you to preview the book the way your readers will see it.
-So it's a good way to acceptance test your custom styles to discover which ones are honored and which ones are ignored.
-
-==== Look Inside
-
-The Amazon Kindle store offers a “Look Inside” feature for reader.
-This so-called feature aims to give readers a glimpse at the contents of the book.
-Sadly, it does no such thing.
-Instead, it shows pages from the legacy MOBI document that kindlegen adds to your e-book file, not the higher fidelity KF8 document.
-This means the preview won't look at all like what the Kindle reader or application will actually show.
-Custom fonts, font-based icons, and most styles will be missing.
-
-This situation is unfortunate for authors.
-What we recommend is to complain loudly to Amazon that they are hurting your sales by displaying a crippled version of your product.
-Tell them that under no circumstances should they show an altered version of your product.
-Another option is to contact Amazon to opt-out of this program.
-
-=== Send to Kindle
-
-WARNING: Don't use it!
-
-{uri-send-to-kindle}[Send to Kindle] is a tempting choice for transferring MOBI files to a Kindle device.
-However, it's utterly broken.
-If you use this tool, don't be surprised if you see missing font-based icons, default fonts, and other font and style errors in your manuscript.
-It's known to strip out all the font files and break the encoding of the document.
-
-We *strongly* recommend you transfer the file to your device using either a USB cable or a sync service such as Dropbox.
-Once transferred, Whispersync will detect the new file (usually looking in the Books folder) and add it to the “On Device” library.
-
-It's important to note that “Send to Kindle” is not reflective of the experience readers will have when shopping in the Kindle store.
-If you use Kindle Direct Publishing (KDP) to publish your book, the integrity of your book will be preserved (to the degree that Amazon allows).
-
-////
-head-stop (default '.')
-stack-head role (run-in is default)
-signature role (sets hardbreaks option)
-
-subject-stop (default ':')
-////
-
-////
-== Device and Application Testing
-
-{project-name} has been tested on the following devices and applications.
-
-.Computers
-|===
-|Device |OS |Resolution |ppi |Browsers |Readium |Gitden |Kindle
-
-|Asus
-|Fedora 17
-|no x no
-|
-|Chrome x
-|Readium
-
-Asus, Fedora 20, display resolution, Chrome x, Readium
-Ideapad Y460 |Fedora 20 |1366 x 768 (16:9) |
-PC, Windows X,
-|===
-
-.Tablets
-|===
-Asus Transformer, Android x, display resolution, Aldiko, Kindle, Readium, Readmill
-Nexus,
-|===
-
-.Phones
-|===
-HTC Sensation, Android x, display resolution, xxxx
-Nexus ,
-|===
-
-////