Custom Note Width

approved

by 0skater0

Effortlessly change the line width of each note individually. Provides multiple ways to customize the experience, making it both efficient and user-friendly to adjust line widths.

27 stars15,157 downloadsUpdated 1mo agoMIT

Obsidian Custom Note Width

Latest release Downloads License Open issues Last commit

Control the line width of every note in Obsidian — individually, per note, or globally. A small control in the status bar gives you instant access, YAML frontmatter persists widths per note, and a new Pills mode lets you switch between presets with a single click.

Demo GIF

Features

  • Per-note widths via YAML frontmatter
  • Status-bar controls — choose between a classic slider or Pills (three preset buttons)
  • Three width units%, px, ch
  • Independent code block width — so narrow prose and wide code can coexist
  • Hotkey-ready commands for every width operation
  • Full English and German UI

Installation

From Community Plugins

  1. Open Settings → Community plugins
  2. Browse → search "Custom Note Width"
  3. Install → Enable

Manual

  1. Download main.js, manifest.json and styles.css from the latest release
  2. Copy them into <vault>/.obsidian/plugins/custom-note-width/
  3. Restart Obsidian and enable the plugin

Requirement: Obsidian's Readable line length setting must be enabled (Settings → Editor → Readable line length).

Usage

The plugin modifies Obsidian's --file-line-width CSS variable. Control it three ways:

MethodBest for
Status-bar control (slider or pills)Quick adjustments while reading/editing
YAML frontmatter (custom-width: 60)Persisting a specific width per note
Commands (palette / hotkeys)Power users, keyboard-driven workflows

Width units

  • % — relative to the editor pane (0–100)
  • px — absolute pixels (100–4000)
  • ch — character widths (10–200)

Switch units via the unit label next to the slider/value (slider mode) or inside a preset editor (pills mode).

Pills mode

Enable under Settings → Control mode → Pills. The status bar shows three buttons with your configured preset values. Click to apply. The button matching the currently applied width is highlighted; no button is active when the width is a custom value.

Settings

Click to see every setting
SettingDescriptionDefault
LanguagePlugin UI language (Auto / English / Deutsch)Auto
Enable sliderShows the width control in the status baron
Control modeSlider (draggable) or Pills (three preset buttons)Slider
Slider width (Slider mode)Horizontal size of the slider in pixels85
Pill preset 1–3 (Pills mode)Value and unit per preset30% / 50% / 100%
Enable text fieldNumeric input next to the slideron
Default width unitUnit used for the global default width%
Default widthWidth applied when a note has no per-note width50
% rangeMin / max for percentage unit0 / 100
px rangeMin / max for pixel unit100 / 4000
ch rangeMin / max for character unit10 / 200
Enable per-note widthStore widths in YAML frontmatteron
YAML front matter keyKey used for per-note widthscustom-width
Enable code block widthGive code blocks an independent widthoff
Code block width unitUnit for code block widthpx
Code block widthSize applied to code blocks800
Reading modeApply code block width in previewon
Source modeApply code block width in source viewon
Live preview modeApply code block width in live previewon

Commands

All commands appear in the palette and can be bound to hotkeys under Settings → Hotkeys (filter: Custom Note Width):

CommandAction
Change the width of the open noteOpens a modal, applies width to current note
Change the default note widthOpens a modal, updates the global default
Change the width for all notesOpens a modal, rewrites every note's YAML width
Apply pill preset 1 / 2 / 3Applies the given preset (Pills mode only)

Theme compatibility

Disclaimer: The plugin modifies --file-line-width. Custom themes may override this variable; there is no guarantee the plugin works with every theme.

ThemeStatusObsidian VersionNotes
DefaultWorks1.12.4Fully functional
ThingsWorks1.12.4Fully functional

Your theme isn't listed? Open a PR adding a row — see CONTRIBUTING.

Reporting bugs

Please include:

  1. Obsidian version (Settings → General)
  2. Plugin version (Settings → Community plugins)
  3. Theme name (Settings → Appearance → Themes)
  4. Operating system
  5. Console errors — open DevTools (Ctrl+Shift+I / Cmd+Option+I), Console tab, copy anything red referencing custom-note-width
  6. Steps to reproduce and what you expected vs what happened
  7. Screenshots or screen recordings help a lot — tools like LICEcap or ShareX work well

Reports that only say "it doesn't work" can't be investigated — details make the difference.

Backups

Always keep backups of your vault. The plugin writes to YAML frontmatter; bugs are possible. Protect your data.

Contributing

See CONTRIBUTING.md for development setup, code style, and the PR process.

License

MIT — provided as-is, no warranty.

Support

ko-fi

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.