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

Heading Level Adjust

obcdianobcdian230 downloads

Adjust Markdown heading levels and clean up dividers/empty lines in selected text or the entire document.

Add to Obsidian
  • Overview
  • Scorecard
  • Updates1

A powerful and safe plugin to adjust Markdown heading levels and clean up your notes in Obsidian.

Features

1. Heading Level Adjustment

Easily promote or demote headings within your selection or the current line.

  • Increase Heading Level: Converts # to ##, ## to ###, etc. (+1).
  • Decrease Heading Level: Converts ## to #, ### to ##, etc. (-1).
  • Custom Heading Level Adjust: Opens a prompt to enter a custom delta (e.g., -2 to demote two levels at once).
  • Composite Commands: Combine heading adjustment and Markdown cleaning in one step.
    • Increase heading level and clean: Promotes headings (+1) and then cleans the selection.
    • Decrease heading level and clean: Demotes headings (-1) and then cleans the selection.
  • Safety First:
    • Prevents demoting below level 1 (#).
    • Prevents promoting beyond level 6 (######).
    • Operations are automatically cancelled if any line in the selection would violate these Markdown standards.

2. Markdown Cleaning

Clean up your notes with a single command.

  • Remove Dividers: Automatically strips out horizontal rules (e.g., ---, ***, ___).
  • Compress Empty Lines: Collapses multiple consecutive empty lines into a single one.
  • Flexible Scope: Works on the current selection or the entire document if nothing is selected.

Installation

From GitHub (Manual)

  1. Download the latest release (main.js, manifest.json, styles.css).
  2. Create a folder named heading-level-adjust in your vault's .obsidian/plugins/ directory.
  3. Move the downloaded files into that folder.
  4. Reload Obsidian and enable the plugin in Settings > Community plugins.

For Developers

  1. Clone this repository.
  2. Run npm install to install dependencies.
  3. Run npm run build to compile the plugin.
  4. Copy main.js, manifest.json, and styles.css to your Obsidian plugins folder.

Usage

Open the Command Palette (Ctrl/Cmd + P) and search for:

  • Heading Level Adjust: Increase heading level (+1) (Default hotkey: Ctrl/Cmd + Shift + =)
  • Heading Level Adjust: Decrease heading level (-1) (Default hotkey: Ctrl/Cmd + Shift + -)
  • Heading Level Adjust: Increase heading level (+1) and clean
  • Heading Level Adjust: Decrease heading level (-1) and clean
  • Heading Level Adjust: Adjust heading level (custom delta)
  • Heading Level Adjust: Clean

License

This project is licensed under the MIT License.

HealthGood
ReviewSatisfactory
About
Adjust Markdown heading levels in a selection or current line with promote, demote, or a custom delta while preventing levels below # or above ######. Clean notes by removing horizontal rules and collapsing multiple blank lines, and apply adjustment+clean as a single command to a selection or whole file.
MarkdownFormattingEditing
Details
Current version
1.0.0
Last updated
4 months ago
Created
4 months ago
Updates
1 release
Downloads
230
Compatible with
Obsidian 1.1.15+
Platforms
Desktop, Mobile
License
MIT
Report bugRequest featureReport plugin
Author
obcdianobcdian
github.com/obcdian/
GitHubobcdian
  1. Community
  2. Plugins
  3. Markdown
  4. Heading Level Adjust

Related plugins

Outliner

Work with your lists like in Workflowy or Roam Research.

Linter

Format and style your notes. Linter can be used to format YAML tags, aliases, arrays, and metadata; footnotes; headings; spacing; math blocks; regular Markdown contents like list, italics, and bold styles; and more with the use of custom rule options.

Various Complements

Complete words similar to auto-completion in an IDE.

Sort and Permute lines

Sort and Permute lines in whole file or selection.

Heading Shifter

Easily Shift and Change Markdown headings.

Shortcuts extender

Use shortcuts for input special symbols without language switching.

List Callouts

Create simple callouts in lists.

Blur

Create obfuscated blocks of text.

Symbols Prettifier

Prettify the symbols with actual symbols you commonly type, like arrows.

Easy Copy

Easily copy the text within inline code, bold text (and many other formats), or quickly generate an elegant link to a heading or block.