Search...Search plugins and themes...
⌘K
Sign in
  • Get started
  • Download
  • Pricing
  • Enterprise
  • Account
  • Obsidian
  • Overview
  • Sync
  • Publish
  • Canvas
  • Mobile
  • Web Clipper
  • CLI
  • Learn
  • Help
  • Developers
  • Changelog
  • About
  • Roadmap
  • Blog
  • Resources
  • System status
  • License overview
  • Terms of service
  • Privacy policy
  • Security
  • Community
  • Plugins
  • Themes
  • Discord
  • Forum / 中文论坛
  • Merch store
  • Brand guidelines
Follow us
DiscordTwitterBlueskyThreadsMastodonYouTubeGitHub
© 2026 Obsidian

Expandomatic

Onsi FakhouriOnsi Fakhouri741 downloads

Expand selection outward through word, sentence, paragraph, section, document — like VSCode's expand selection.

Add to Obsidian
  • Overview
  • Scorecard
  • Updates1

An Obsidian plugin that progressively expands the selection outward, modelled after VSCode's Expand Selection (Alt+Shift+→).

Usage

You'll need to assign the keybindings to Expand Selection and Shrink Selection yourself.

Press ⌃⇧⌘→ (Control+Shift+Command+Right Arrow) repeatedly to grow the selection one unit at a time. Each press wraps the current selection in the next larger syntactic unit. Moving the cursor or changing the selection manually resets the expansion.

Press ⌃⇧⌘← (Control+Shift+Command+Left Arrow) to shrink back through the expansion history one step at a time. Shrink only works while the selection exactly matches the last expanded selection — any manual change to the cursor or selection clears the history.

Expansion levels

Prose (default)

Press Selects
1st Word under cursor
2nd Full URL (if cursor is inside one), otherwise sentence
3rd Sentence
4th Paragraph (blank-line bounded)
5th+ Innermost section (heading + content), then parent sections outward
Last Entire document

Sentence detection uses punctuation heuristics (. ! ? followed by a capital letter or end of text). Single-letter abbreviations like U.S. and Dr. are not treated as sentence boundaries.

Inside a table

Press Selects
1st Word
2nd Cell content (between `
3rd Entire row
4th Entire table

Inside a fenced code block

Press Selects
1st Word
2nd Entire line
3rd Entire fenced block (from ``` to ```)

Inside a math block ($$...$$ or inline $...$)

Inline $...$:

Press Selects
1st Word/token
2nd Term (operator-bounded: + - * / = ^ , ( ) [ ] { })
3rd Entire $...$ (including delimiters)
4th Entire line

Block $$...$$:

Press Selects
1st Word/token
2nd Term
3rd Entire line
4th Entire $$ block

Installation

  1. Build: npm install && npm run build
  2. Copy main.js and manifest.json into <vault>/.obsidian/plugins/expandomatic/
  3. Enable the plugin in Settings → Community Plugins

Hotkeys can be rebound under Settings → Hotkeys by searching for "Expand Selection" or "Shrink Selection". The defaults are ⌃⇧⌘→ (expand) and ⌃⇧⌘← (shrink).

Development

npm install
npm run dev   # watch mode, rebuilds on save
npm run build # production build
HealthGood
ReviewSatisfactory
About
Expand selection outward through syntactic units (word → URL/sentence → paragraph → section → document) with repeated commands. Shrink back stepwise through the expansion history and handle table cells, fenced code blocks, and inline/block math intelligently.
Editing
Details
Current version
1.0.0
Last updated
4 months ago
Created
4 months ago
Updates
1 release
Downloads
741
Compatible with
Obsidian 0.15.0+
Platforms
Desktop, Mobile
License
MIT
Report bugRequest featureReport plugin
Author
Onsi FakhouriOnsi Fakhourionsi
GitHubonsi
  1. Community
  2. Plugins
  3. Editing
  4. Expandomatic

Related plugins

LanguageTool Integration

Advanced grammar and spell checking, powered by LanguageTool.

Meta Bind

Make your notes interactive with inline input fields, metadata displays, and buttons.

Advanced Tables

Improved table navigation, formatting, and manipulation.

Thino

Quickly capture memos and display them in the sidebar with a heatmap. (Closed source)

Editing Toolbar

The Editing Toolbar is modified from cMenu, which provides more powerful customization settings and has many built-in editing commands to be a MS Word-like toolbar editing experience.

Outliner

Work with your lists like in Workflowy or Roam Research.

Hover Editor

Transform the Page Preview hover popover into a fully working editor instance.

Sort and Permute lines

Sort and Permute lines in whole file or selection.

Creases

Tools for effectively folding Markdown sections.

Various Complements

Complete words similar to auto-completion in an IDE.