A feature-rich, visual WYSIWYG Markdown editor for VS Code.
Edit Markdown as a live, formatted document — true WYSIWYG, instant-render, and split views, always in two-way sync with the file on disk. No more juggling raw syntax and a separate preview pane.
Outline navigation, wiki-style [[links]], Git change bars, live theming that follows VS Code, drag-and-drop images, code highlighting, and much more — without leaving the editor you already use.

Features
Built on the Vditor editor, this plugin adds deep VS Code integration and customization.
Editing
- WYSIWYG, instant-render, and split views, kept in two-way sync with the underlying Markdown file.
- Responsive tables that follow the editor width, with extra table-editing controls.
- Mermaid, KaTeX, Graphviz, ECharts, abc.js and more — rendered offline from bundled assets.
Navigation & structure
- Outline panel in the editor — jump to any heading; configurable side and width.
- Markdown Outline in the Explorer sidebar — a clickable heading tree for the open file.
- Search the document with
Ctrl/Cmd+F. - Reveal in source — jump from the visual editor straight to the matching line in the plain-text editor.
- Wiki-style
[[links]]— clickable page links with autocomplete as you type[[, plus one-click creation of missing pages.
VS Code integration
- Follows your VS Code theme, and re-themes live when you switch.
- Live settings reload — config changes apply without reopening the editor.
- Git change bars in the gutter (added / modified vs the last commit).
- Status bar — estimated reading time, live word count, and the current edit mode.
- Rename tracking — the editor follows files moved or renamed in the workspace.
- Tab-group aware — no duplicate tabs; open the editor beside your text editor.
- Opt-in — never takes over your
.mdfiles; works in untrusted and virtual workspaces. - One-key return to the plain-text editor (
Ctrl+Alt+E/Cmd+Ctrl+E).
Appearance & customization
- Markdown rendering themes —
automatches your VS Code theme's colours, or pick a fixed look regardless of the editor theme: GitHub (light / dark), Material Dark, or VS Code Light / Dark Modern. Code-block highlighting pairs with the chosen theme automatically. - Code-block syntax themes — 73 highlight.js styles, or auto-follow your light/dark theme.
- Optional code-block line numbers, heading highlighting and level markers, and an editor font size that follows VS Code's.
- Mermaid diagram themes —
automatches the rendering theme above (e.g. GitHub → GitHub, Material Dark → One Dark, VS Code → Zinc), or pick from 15 palettes (Dracula, Nord, Tokyo Night, Catppuccin, Solarized, …) or mermaid's built-ins. Diagrams re-theme live when you switch. - Toolbar visibility and full-width layout toggles.
- Custom CSS inline, plus external CSS files with live reload.
- Configurable links — Ctrl/Cmd+click to open and a plain click to edit (or the reverse).
Images
- Paste, drop, or upload images — saved to a configurable workspace folder.
- Optional automatic WebP conversion and max-width downscaling to keep files small.
Performance
- Instant preview on open — the document appears immediately while the live editor loads underneath.
- Large documents stay responsive while editing, and very large files stream in progressively.
Security
- Hardened, sandboxed webview, with remote images off by default to avoid tracking.
See the changelog for the full list of features and changes.
Usage
Open the custom editor
- Explorer: right-click a Markdown file → Open with vMarkd.
- Open editor tab: from a
.mdfile, run Open with… and pick vMarkd.
Return to the plain text editor
- Click Edit In Text Editor in the editor toolbar, or
- run
vMarkd: Edit in Text Editorfrom the Command Palette. - Switch from WYSYWIG to Source in bottom status bar.
Configuration

Acknowledgement
- zaaack/vscode-markdown-editor — the project this fork is based on
- Vditor — the Markdown editor component
- Lute — the Markdown engine (vendored and pinned)
- Rendering & highlighting bundled via Vditor: highlight.js, Mermaid, KaTeX, ECharts, abc.js, Graphviz / Viz.js, flowchart.js, markmap, plantuml-encoder, smiles-drawer
- github-markdown-css by Sindre Sorhus (MIT) — the GitHub light/dark markdown-rendering themes (
vmarkd.theme.content), vendored undermedia/markdown-themes/(upstream verbatim, plus a small marked override block re-asserting the inline-code background on the editor surface) - vscode-markdown-style by raycon (MIT) — the Material Dark (One Dark) rendering theme (
vmarkd.theme.content), adapted undermedia/markdown-themes/ - Beautiful Mermaid by Craft Docs (MIT) — the 15 Mermaid diagram palettes (
vmarkd.theme.mermaid); only the colour values are vendored (insrc/mermaid-palettes.ts, translated to mermaidthemeVariables), not the renderer - microsoft/vscode (MIT) — the
vscode-light-modern/vscode-dark-modernrendering themes use the built-in Light Modern / Dark Modern palettes (extensions/theme-defaults/themes) + the markdown preview layout (extensions/markdown-language-features/media/markdown.css)
License
MIT