github saberzero1/motions 0.97.0

latest releases: 0.150.0, 0.149.0, 0.148.0...
one month ago

Fixed

  • Priority over Latex Suite and other CM6 extensions — the codemirror-vim fork's keydown handler no longer depends on plugin load order to fire before other extensions that use Prec.highest. The fork now uses a CM6 eventObservers.keydown (DOM event observer) instead of eventHandlers.keydown — in CM6's dispatch order, observers run before handlers, guaranteeing vim processes keys first regardless of Prec ordering or community-plugins.json order. Previously, both the fork and Latex Suite registered keydown handlers at Prec.highest, and the first-registered handler won — making key handling dependent on which plugin loaded first. (#107)
    • Fork: ~/Repos/codemirror-vim/src/index.ts (moved keydown from eventHandlers to eventObservers, added setKeyInterceptActive API)
    • Fork: ~/Repos/codemirror-vim/DIFFERENCES.md (added "Observer-based keydown dispatch" and "setKeyInterceptActive API" sections)
    • Plugin: src/flash/state.ts (setFlashActive and cancelFlash call setKeyInterceptActive)
    • Plugin: src/easymotion/register.ts (createMotionTrigger and createCharMotionTrigger bracket try/finally with setKeyInterceptActive)
    • Plugin: src/ui/hint-mode.ts (waitForHintKey sets setKeyInterceptActive on entry and cleanup)

Documentation

  • CHANGELOG.md
  • KNOWN_LIMITATIONS.md: Updated Latex Suite interaction section with observer-based keydown dispatch fix
  • AGENTS.md: Updated codemirror-vim fork description with observer-based keydown dispatch and setKeyInterceptActive API
  • docs/guides/ecosystem-compatibility.md: Updated extension priority description with observer-based mechanism

Full Changelog: 0.96.0...0.97.0

Don't miss a new motions release

NewReleases is sending notifications on new releases.