Skip to content

1.0.2

Latest

Choose a tag to compare

@hiroshiyui hiroshiyui released this 11 Apr 11:16
1.0.2
7d5df48

Patch release. Fixes a Markdown rendering bug and bundles two sample documents inside the APK so the reader is useful out of the box.

Fixed

  • Inline Markdown formatting rendered as literal characters. **bold**, *italic*, _italic_, and ~~strikethrough~~ showed up with the literal * / _ / ~ markers visible in the reader, with the bold / italic / strikethrough style applied to the marker characters too. The STRONG, EMPH, and STRIKETHROUGH branches in MarkdownToBlocks.appendInline were recursing into their child nodes via a shared helper, and the children of those elements include the literal marker tokens (MarkdownTokenTypes.EMPH, GFMTokenTypes.TILDE). The marker tokens fell through to the catch-all literal-text branch and were appended verbatim. The fix copies the existing CODE_SPAN / BACKTICK pattern: parent handlers now explicitly skip the marker child tokens when recursing. A new MarkdownToBlocksTest under app/src/test/ locks the behaviour in with nine regression cases (bold, italic, strikethrough, nested ***foo***, surrounding text, and a 2 * 3 = 6 case proving stray asterisks outside an emphasis match still render literally).

Added

  • Two bundled sample documents under app/src/main/assets/samples/, accessible from the pencil-icon dropdown on the home screen:
    • Déclaration universelle des droits de l'homme — the official French text of the UN Universal Declaration of Human Rights (UN General Assembly Resolution 217 A (III) of 10 December 1948), as a Markdown file. Public-domain UN document. Exercises Roboto Slab's non-ASCII glyph coverage and the reader's heading and list layout.
    • Little Women by Louisa May Alcott — Project Gutenberg ebook #37106, the no-images variant (pg37106.epub, 545 KB, EPUB 2.0). Public domain. Exercises the EPUB chapter pager and cover-image rendering.
  • New DocumentLoader.loadSample(context, assetPath, type, displayName) that reads from the APK's assets. Samples are routed via a new SAMPLE_URI_PREFIX constant (sample://) on Screen.Reader targets and are read-only by contract — the reader hides its Edit / Save / Done buttons for any URI starting with that prefix.

Install

The attached APK is signed with the developer's upload key and detach-signed with GPG (`.asc`). To verify:

```
gpg --verify org.ghostsinthelab.app.makedown_v1.0.2-release.apk.asc \
org.ghostsinthelab.app.makedown_v1.0.2-release.apk
```

Expected signer: YOU Hui-Hong, GPG fingerprint `37A4 5B21 B45E A42E BE6C E74C 9F35 3471 AF05 D276`.

Full Changelog: 1.0.1...1.0.2