Fixed
- Table movement broken when
enableTableNav=false(macOS) —applyTableCellMotions()overrodemoveByLines,moveByCharacters, andmoveByDisplayLinesglobally whenevertableWidgetModewasnative, regardless ofenableTableNav. When table nav was disabled, these overrides still interceptedj/k(andgj/gk) inside native table cells, callingscheduleCrossing()withsetTimeout(0)which raced with Obsidian's native cell focus management on macOS — producing cursor bounce-back. Users withj→gj/k→gkremappings (common vimrc/Lua pattern) were especially affected because the remapping routes throughmoveByDisplayLines. Fixed by gatingapplyTableCellMotions()onenableTableNav— when the user disables table nav, the motion overrides are not installed. Obsidian's native table cell editor handles cross-cell navigation on its own. (#136)- Plugin:
src/main.ts(addedenableTableNavcheck to bothapplyTableCellMotionsregistration sites)
- Plugin:
Changed
- Cross-cell motions now respect
enableTableNav—h/j/k/lcrossing cell boundaries in native table mode was previously always active regardless ofenableTableNav. Cross-cell motions now only activate whenenableTableNavistrue. When disabled, Obsidian's native table cell editor handles cell boundary navigation directly.
Tests
- Updated
test/specs/table-nav-disabled.e2e.ts(#136): replaced flaky native table cross-cell tests withenableTableNav=falseno-overlay assertion; added 2 raw mode tests withj→gj/k→gkremappings (j down, k up) - Updated
test/specs/table-cell-vim-mode.e2e.ts:enableTableNav=falsecross-cell tests now assert cursor stays within cell (no cross-cell override)
Documentation
CHANGELOG.mdKNOWN_LIMITATIONS.md: updated cross-cell motions documentation to reflectenableTableNavgating; updated table modes matrix; updatedtablewidgetmode descriptionCONTRIBUTING.md: updatedtable-cell-motions.tsdescription to reflectenableTableNavgatingdocs/features/tables.md: updated table modes matrix and cell editor behavior description for disabled table-navdocs/configuration/settings.md: updated Table navigation setting description
Full Changelog: 0.117.0...0.118.0