Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Neovim
  3. markdown.nvim

markdown.nvim

MITLua

A configurable Neovim plugin providing keybindings and commands for efficient Markdown editing, including inline formatting, TOC generation, and navigation.

GitHubGitHub
245 stars12 forks0 contributors

What is markdown.nvim?

markdown.nvim is a Neovim plugin that provides a comprehensive set of tools for editing Markdown files efficiently. It solves the problem of cumbersome Markdown formatting by offering intuitive keybindings for inline styling, table of contents generation, list management, and navigation within documents. The plugin leverages Neovim's capabilities and tree-sitter parsing for accurate text operations.

Target Audience

Neovim users who frequently write or edit Markdown files, such as developers documenting projects, technical writers, or anyone using Markdown for note-taking. It's particularly useful for those who prefer keyboard-driven workflows and want to avoid switching to a mouse for formatting.

Value Proposition

Developers choose markdown.nvim for its deep integration with Neovim's editing model, high configurability, and focus on efficiency. Unlike generic Markdown plugins, it provides Vim-style motions for formatting, extensible hooks, and optional integration with nvim-treesitter for precise parsing.

Overview

Configurable tools for working with Markdown in Neovim.

Use Cases

Best For

  • Adding bold, italic, or code formatting to text without leaving normal mode
  • Generating a table of contents for long Markdown documents
  • Managing and toggling task lists in GitHub Flavored Markdown
  • Quickly creating and following links within a Markdown file
  • Navigating between sections in a Markdown document using keyboard shortcuts
  • Customizing Markdown editing keybindings to match personal Vim workflows

Not Ideal For

  • Users who need advanced table editing or formatting, as table features are currently only planned and not implemented.
  • Teams using graphical or WYSIWYG Markdown editors that prioritize real-time preview over keyboard efficiency.
  • Developers seeking a plug-and-play solution with zero configuration; markdown.nvim requires setup and customization for optimal use.
  • Projects relying on non-Neovim editors or older Vim versions, as it exclusively requires Neovim >=0.10.0.

Pros & Cons

Pros

Vim-Native Keybindings

Uses familiar Vim motions like 'gs{motion}' for toggling styles and 'gl{motion}' for adding links, making formatting intuitive without leaving normal mode.

Comprehensive Feature Set

Includes tools for table of contents generation, list management with auto-numbering, link handling, and navigation, all detailed in the usage section.

High Customizability

Offers <Plug> mappings, hooks, and an on_attach callback for extensive configuration, allowing users to tailor keybindings and behavior to their workflow.

Tree-Sitter Integration

Leverages nvim-treesitter for accurate parsing, enabling precise operations like style toggling only on inline content, as shown in the inline surround examples.

Cons

Incomplete Feature Set

Table manipulation is listed as a planned feature but not yet implemented, limiting functionality for users who frequently work with Markdown tables.

Setup Complexity

Requires installation of tree-sitter parsers and configuration in Lua, which can be cumbersome for users new to Neovim's plugin ecosystem.

Neovim-Exclusive

Only compatible with Neovim, excluding users of Vim or other editors, and mandates Neovim version 0.10.0 or higher, as stated in requirements.

Frequently Asked Questions

Quick Stats

Stars245
Forks12
Contributors0
Open Issues6
Last commit5 months ago
CreatedSince 2023

Tags

#plugin-manager#nvim-treesitter#productivity#table-of-contents#vim-motions#neovim-plugin#markdown#md#nvim-plugin#github-flavored-markdown#text-editing#neovim#neovim-lua-plugin#keybindings#nvim

Built With

N
Neovim
T
Tree-sitter
L
Lua

Included in

Neovim20.6k
Auto-fetched 1 day ago

Related Projects

markdown-preview.nvimmarkdown-preview.nvim

markdown preview plugin for (neo)vim

Stars7,867
Forks390
Last commit1 year ago
render-markdown.nvimrender-markdown.nvim

Improve viewing Markdown in Neovim

Stars4,630
Forks116
Last commit6 days ago
markview.nvimmarkview.nvim

A hackable markdown, Typst, latex, html(inline) & Asciidoc previewer for Neovim

Stars3,494
Forks94
Last commit15 days ago
peek.nvimpeek.nvim

Markdown preview plugin for Neovim

Stars866
Forks82
Last commit1 year ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub