Skip to content

InkKit 0.1.2

Choose a tag to compare

@aicayzer aicayzer released this 16 Oct 04:07
· 55 commits to main since this release
359d27c

Editing conveniences and preservation fixes since InkKit 0.1.1, including its immediate-caret focus fix.

  • Turn a typed table row into a table with Enter or Tab.
  • Offer smart quotes and dashes through textInput.smartPunctuation, off by default.
  • Move a block with Option-Up and Option-Down, or through moveBlock. Hosts can configure moveBlockUp and moveBlockDown in Keymap and inspect them in commandState; BlockMoveDirection is exported.
  • Preserve spaces, typed link addresses, plain-text paste and inline-code typing, including the first edit after composition.
  • Preserve typing after Shift+Enter at the end of a paragraph and near formatting, and preserve callout and quote edge spaces.
  • Allow replaceTextRange inside lists, quotes, callouts and table cells without losing their surrounding structure.
  • Center table grabbers and task checkboxes. Hosts can adjust task checkbox placement with --inkkit-checkbox-offset.
  • Make browser performance checks distinguish whole-note work from runner noise.

Compatibility review: 0.1.2 is additive pre-1.0 work, so the planned 0.1.2 version is appropriate. The public API additions above require no migration of existing calls. Smart punctuation remains disabled unless a host enables it. Hosts that supply exhaustive keymaps or command-state handling should review the new block-move names. See the API reference for signatures, defaults and guards.

Three editing behaviors also change:

  • Browser historyUndo and historyRedo beforeinput events now go through undo() and redo().
  • Shift+Enter inside a literal Markdown block does nothing; it no longer rewrites the block as escaped text.
  • A hard break directly before an inline HTML comment is written as <br />.

Candidate checks include 3,050 unit tests, fresh offline consumers in Chromium and WebKit, and 25 selected native WKWebView cases on a separate test Mac. Native results cover the fixture bridge, focus, source input, text ranges and shared history; they do not establish consumer-app behavior, external clipboard destinations or complete IME interoperability.

Verification and publication record.