Wednesday, November 19, 2014

EMC++ Display Issues on Kindle

I've received some reports about how Effective Modern C++ doesn't render well on Kindle, with code comments not aligning correctly and a narrow single-character ellipses ("…") being visually indistinguishable from a wider three-character ellipses ("..."). In response to my queries about these kinds of problems, my production team at O'Reilly told me:
One of the Kindle options available is "Publisher Font." If the user selects this font, the comments will be aligned and the difference between the ellipses will be visible. None of the other font options available on the Kindle device will display the alignment in the proper way. By default, Kindle devices don't default to Publisher Font, which is a shame. Users will have to make the selection manually.
I've noted some other Kindle-related issues at the EMC++ Errata List. If you find additional problems, let me know, and I'll see what we can do about addressing them in revised versions of the digital versions of the book. (Revised versions are free to people who've bought the digital version of EMC++.)

Scott

11 comments:

Seth said...

I wrote up a few details about how I hacked together a quick demonstration of clang-format working in a web browser. I thought you might be interested, just in case you know any publishers or authors who might be interested in investigating using this technology for anything:

http://lists.cs.uiuc.edu/pipermail/cfe-users/2014-November/000613.html

Scott Meyers said...

@Seth: I'm confident that the long-term solution to the code-formatting problem is to do it dynamically (as clang-format does and as is conventionally done for prose all the time). To date, I've heard of no interest on the part of publishers or device manufacturers (e.g., Amazon or Apple), but hope springs eternal. I hope that demonstrations such as yours nudge the process along.

David said...

I have two Kindle readers:

- Kindle DX
- Kindle reader for Samsung

There is no option to select publisher font in either reader. Is it possible to download the example code from somewhere?

Otherwise I will request a refund from Amazon because the book is simply unreadable.

Thanks,

Scott Meyers said...

@David: Thanks for bringing your problems to my attention. I've forwarded your remarks to O'Reilly and asked them to look into this immediately. This isn't supposed to happen.

I'll post more when I know more.

David said...

Thanks for the quick reply.

David

Scott Meyers said...

@David: I really am sorry for the experience you're having. As I said, this isn't supposed to happen :-(

Scott Meyers said...

@David: This is the response I got from O'Reilly:

This is a good example of the state of e-reading devices out there: many different brands and models with different capabilities.

We don't have a solution for overcoming the limitations of these specific readers, but if the customer purchases from O'Reilly directly, we offer ebooks in multiple formats (PDF, EPUB, and Mobi), all DRM free. The PDF option would allow this customer to see a print-fidelity version of the book.


I don't personally find this response as satisfying as I'd like, so I'll continue to urge O'Reilly to work harder to address Kindle-related issues, but for now, I'm afraid that this is what we have.

David said...

Hi Scott,

I was able to get the code snippets to display properly in my Kindle DX reader by setting the smallest font size possible. This is slightly smaller than I would like but at least I can read the book now :)

Re the response from O'Reilly, the code snippets in the Kindle version of

OpenGL Super Bible
http://www.openglsuperbible.com/

display correctly in my Kindle DX reader regardless of the font size chosen or screen orientation used (portrait or landscape). If the publisher of that book (Addison-Wesley Professional) can do it, then O'Reilly should be able to as well.

Thanks,

David

Anonymous said...

I have a Kindle Paperwhite and also do not get the publisher font option (purchased the book via amazon)

Scott Meyers said...

@David: I'm glad you found a workaround, and, as I said, I'll continue to press O'Reilly to improve their Kindle support. People who buy books on Kindle, regardless of author or publisher, should be able to take for granted that their books will display properly.

Scott Meyers said...

@Anonymous: I'll make sure O'Reilly knows about this, too. Thanks for bringing this to my attention.