Advanced Formatting

approved

by Mohamed Saleh

Typography and user-defined inline formatting roles for Obsidian, live in the editor. - This plugin has not been manually reviewed by Obsidian staff.

30 downloadsUpdated 2d agoMIT

Advanced Formatting

Global typography and readable inline formatting for Obsidian, with support for Arabic and RTL text.

Inline formatting

One-off formatting uses readable markup:

~={orange}colored text=~
~={color:orange; bg:#fff3cd; font:Amiri; size:1.1; bold}formatted text=~

Simple bold and italic remain native Markdown. Reusable global roles use the same syntax with a role name:

~={role:question}text=~

Roles are edited in Settings and applied from the Apply inline role... command. Formatting is supported in Live Preview and Reading view.

Editor context menu

Right-clicking selected text opens Obsidian's editor context menu. It includes:

  • quick colors from Settings;
  • Format selection...;
  • Apply inline role...;
  • Clear formatting;
  • direction and heading/list shortcuts where applicable.

The Format selection control is a small anchored popover, not a full modal window.

Settings

Settings are global and organized into:

  • Typography;
  • Headings;
  • Lists;
  • Quick colors;
  • Inline roles;
  • Advanced CSS snippets.

Font choices include common installed fonts and custom font names. The plugin does not download or install fonts automatically.

Custom CSS snippets

Custom CSS snippets are reusable CSS declarations for an inline role. Enter declarations without a selector or braces; the plugin inserts them into the formatted span. For example:

letter-spacing: 0.05em;
font-variant: small-caps;
text-shadow: 0 1px 2px #0004;
border-bottom: 1px solid currentColor;

Name each snippet so it can be recognized later, then choose it from the “Snippets...” button in a role editor. CSS snippets are not used by the compact Format selection popover.

Commands

CommandWhat it does
Apply inline role...Applies a reusable global role to the selection
Format selection...Opens the compact formatting popover
Clear formattingRemoves plugin formatting at the selection/cursor
Force right-to-left / left-to-rightOverrides the current line direction
Clear direction overrideRemoves a direction override
Strip formatting from this noteRemoves known plugin markup from the current note

The vault-wide strip command, footnote insertion command, profile system, and profile-specific commands are intentionally not part of this pre-release design.

Limitations

  • Formatting actions currently operate within one line.
  • Direction overrides are not supported on list lines because they conflict with bullet positioning.
  • The new syntax is intentionally simple and does not support arbitrary nested direct-format spans.

License

MIT — see 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.