Move Done Down

approved

by Mihanentalpo@yandex.ru

Move completed top-level Markdown task blocks down before the completed-task tail. - This plugin has not been manually reviewed by Obsidian staff.

52 downloadsUpdated 1mo agoMIT

Move Done Down

Move Done Down is an Obsidian plugin that moves completed top-level Markdown task blocks down in the current note.

It is built for task lists where finished items should naturally collect near the bottom while active tasks stay easier to scan.

Features

  • Moves fully completed top-level task blocks below active content.
  • Keeps nested task blocks together with their parent task.
  • Treats a parent task as movable only when all nested task items inside the block are also completed.
  • Can insert newly moved tasks before an existing completed-task tail at the bottom of the note.
  • Preserves line endings, final newlines, trailing blank lines, and non-task text.
  • Supports custom completion markers.
  • Works on desktop and mobile.

Usage

Run the command:

Move completed top-level tasks down

Example:

- [ ] Active task
- [x] Finished task
- [ ] Another active task

becomes:

- [ ] Active task
- [ ] Another active task

- [x] Finished task

Nested task blocks are moved together. A completed parent with an active child is left in place:

- [ ] Prepare release
- [x] Update documentation
  - [x] Add installation notes
  - [x] Add settings section
- [x] Review pull request
  - [ ] Check mobile behavior
- [ ] Publish release

becomes:

- [ ] Prepare release
- [x] Review pull request
  - [ ] Check mobile behavior
- [ ] Publish release

- [x] Update documentation
  - [x] Add installation notes
  - [x] Add settings section

When the note already ends with completed tasks, newly completed blocks are inserted above that existing completed-task tail:

- [ ] Plan next version
- [x] Write changelog
- [ ] Check translations

- [x] Older completed task
- [x] Another older completed task

becomes:

- [ ] Plan next version
- [ ] Check translations

- [x] Write changelog

- [x] Older completed task
- [x] Another older completed task

The plugin edits the current Markdown editor content directly. If you are using it on important notes, keep Obsidian file recovery, Sync version history, or Git available.

Settings

Done markers

Comma-separated one-character markers treated as completed.

Default:

x,X,v,V,-

This means all of these are considered completed:

- [x] Done
- [X] Done
- [v] Done
- [V] Done
- [-] Done

Space is not allowed as a completed marker.

Insert moved tasks before old completed tail

When enabled, existing completed tasks already collected at the bottom stay at the bottom, and newly moved tasks are inserted above them.

When disabled, completed tasks are moved to the end of the note.

Show notices

Controls whether the plugin shows a notice after running the command.

Languages

The plugin follows the current Obsidian app language when possible.

Supported languages:

  • English
  • Russian
  • Simplified Chinese
  • German
  • French
  • Spanish

Unsupported languages fall back to English.

Installation

From Obsidian Community Plugins

Once the plugin is published:

  1. Open Obsidian Settings.
  2. Go to Community plugins.
  3. Search for Move Done Down.
  4. Install and enable the plugin.

Manual installation

Download the release files from GitHub:

  • main.js
  • manifest.json
  • styles.css

Copy them into:

<your-vault>/.obsidian/plugins/move-done-down/

Then reload Obsidian and enable the plugin in Community plugins.

Development

Install dependencies:

npm install

Run tests:

npm test

Run lint:

npm run lint

Build the plugin:

npm run build

The build creates main.js. It is ignored by git because GitHub Releases attach the compiled plugin files as release assets.

Release

For a public release, create a Git tag that exactly matches the version in manifest.json, for example:

git tag 0.1.3
git push origin 0.1.3

The release workflow builds the plugin, runs tests, and uploads:

  • main.js
  • manifest.json
  • styles.css

Obsidian installs plugin files from GitHub release assets, not from the source tree.

License

MIT

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.