Releases: saberzero1/motions
Releases · saberzero1/motions
0.2.0
Fixed
- Vimrc path now uses
Vault.configDirinstead of hardcoded.obsidian, supporting custom config directories - Setting descriptions use dynamic config directory path
:obwith no arguments now opens a searchable modal listing all command IDs instead of logging to the developer console- Coexistence E2E test now opens a file before assertions, fixing CI race condition
- Removed deprecated
setDynamicTooltip()call on scrolloff slider
Full Changelog: 0.1.0...0.2.0
0.1.0
Added
Markdown text objects
i*/a*— inside/around bold (**...**) or italic (*...*), with smart disambiguationi_/a_— inside/around italic (_..._)i`/a`— inside/around inline codei$/a$— inside/around math ($...$)i~/a~— inside/around strikethrough (~~...~~)i=/a=— inside/around highlight (==...==)il/al— inside/around links ([[wikilink]]or[text](url))iC/aC— inside/around fenced code blocksiB/aB— inside/around blockquotesio/ao— inside/around callouts- All delimiter-based text objects work across multiple lines (20-line scan limit)
Structural navigation
]h/[h— next/previous heading (any level)]1–]6/[1–[6— next/previous heading by specific level]l/[l— next/previous list item (same indent level)]n/[n— next/previous link]b/[b— next/previous open buffer (tab), with fallback to recent files]|/[|— next/previous table cell
Operators
gq— hard-wrap text at textwidth (default 80) with Markdown-aware prefix preservation (blockquotes, lists, nested structures)gw— same asgqbut keeps cursor at original position
Workspace navigation
<C-w>h/j/k/l— focus pane left/down/up/right<C-w>v/<C-w>s— split vertical/horizontal<C-w>c/<C-w>q— close current tab<C-w>o— close all other tabsgt/gT— next/previous tabgd— go to definition (follow link under cursor)gx— open URL under cursor in browsergf— open file switcher (quick open)gO— document outline navigator (searchable heading list)grn— rename current notegrr— show backlinks to current notegra— context-aware actions for cursor positiong<C-g>— show document statistics (words, lines, characters)za/zc/zo— toggle/close/open fold at cursorzM/zR— fold all / unfold all
Ex commands
:w/:write— save current file:q/:quit— close current tab:wq— save and close:bn/:bp— next/previous tab:bd/:bc— close current tab:only— close all other tabs:qa/:quitall— close all tabs:wa/:wall— save all:ob {command-id}— execute any Obsidian command by ID:ob— list all available command IDs:sidebar left/:sidebar right— toggle sidebar:explorer— reveal active file in file explorer:buffers/:ls— show all open buffers in a modal:backlinks— show backlinks to current note in a modal:grep {pattern}— search vault for text, show results in a modal:back/:forward— navigate back/forward in history:reg/:registers— show register contents in a modal:marks— show marks and their positions in a modal
EasyMotion / Hop
<leader><leader>w— label every word start in the viewport<leader><leader>j— label every non-empty line<leader><leader>f{char}— label every occurrence of a character<leader><leader>h— hint mode (Vimium-style labels for clickable UI elements)
Quality of life
- Vim mode status bar showing NORMAL / INSERT / VISUAL / REPLACE
- Macro recording indicator showing RECORDING @{register} in status bar
- Which-key hints overlay when leader key is pressed
- Ex command tab completion via Tab key
- Scrolloff (configurable visible lines above/below cursor)
- Configurable insert escape sequence (e.g.,
jkto exit insert mode viaset insertmodeescape=jk) - Settings hot-reload (toggle features without restarting Obsidian)
Vimrc loader
- Built-in
.obsidian.vimrcsupport compatible with obsidian-vimrc-support syntax - Supported commands:
map,nmap,imap,vmap,noremap,nnoremap,inoremap,vnoremap,unmap,set,let mapleader,exmap,obcommand,source - Supported
setoptions:clipboard,tabstop/ts,textwidth/tw,shiftwidth/sw,expandtab/et,insertmodeescape/ime - Leader key replacement in mappings (
<leader>token) - Leader key propagation to sourced files
Settings
- Independent toggles for all feature groups
- Leader key bindings table (add/remove key-to-command mappings without editing vimrc)
- Scrolloff slider (0–20 lines)
- EasyMotion label character customization