Block Drag & Drop
pendingby wepee
Drag and drop content blocks to reorder paragraphs, headings, lists, and other Markdown elements in Live Preview.
Block Drag & Drop
Drag and drop content blocks to reorder paragraphs, headings, lists, and other Markdown elements in Obsidian's Live Preview mode.
Features
- Drag handle appears on hover to the left of each block.
- Drop indicator shows exactly where the block will land.
- Ghost preview follows the cursor while dragging.
- Multi-block selection with Shift-click (range) and Ctrl/Cmd-click (toggle).
- Keyboard shortcuts to move blocks up/down (assignable via Hotkeys settings).
- Landing animation highlights the block after it moves.
- Single undo for every move (Ctrl/Cmd+Z restores the original position).
- Works with paragraphs, headings, lists, code blocks, tables, callouts, blockquotes, embeds, math blocks, and thematic breaks.
- Frontmatter is never draggable.
Usage
- Open a note in Live Preview mode.
- Hover over any block to reveal the grip handle on the left.
- Click and drag the handle to move the block.
- Release to drop it at the indicated position.
Multi-block drag
- Shift-click handles to select a contiguous range.
- Ctrl/Cmd-click handles to toggle individual blocks.
- Drag any selected handle to move all selected blocks together.
Keyboard
Assign hotkeys in Settings > Hotkeys for:
- Move block up
- Move block down
Settings
| Setting | Description |
|---|---|
| Handle position | Left gutter or left margin |
| Handle visibility | On hover or always visible |
| Drag threshold | Minimum movement before a drag starts |
| Multi-block selection | Enable or disable Shift/Ctrl-click |
| Touch drag | Experimental touch support |
Installation
From Community Plugins
- Open Settings > Community plugins.
- Search for Block Drag & Drop.
- Click Install, then Enable.
Manual
- Download
main.js,manifest.json, andstyles.cssfrom the latest release. - Create a folder
<vault>/.obsidian/plugins/block-drag-drop/. - Copy the three files into it.
- Enable the plugin in Settings > Community plugins.
Development
npm install
npm run dev # watch mode
npm run build # production build
License
For plugin developers
Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.