Markdown Preview Sublime Text: Setup Guide (2026)
September 11, 2026 · 9 min read
Markdown Preview Sublime Text Setup: Packages and Editing Guide
To get a markdown preview Sublime Text needs a package, because the editor ships with syntax highlighting only. Install MarkdownPreview for a browser preview, MarkdownLivePreview for a rough in-app pane, and MarkdownEditing for writing ergonomics. This guide covers Sublime Text 4 (build 4200), the settings JSON for each, and where each one falls short.
Can I Preview Markdown in Sublime Text?
Yes, but not out of the box. A fresh Sublime Text 4 install highlights .md files and nothing more. There's no split preview like the one in VS Code, so every preview markdown Sublime workflow runs through Package Control.
Three packages cover the job. They don't compete so much as split it.
| Package | What it does | Where the preview appears | Maintenance (as of Sept 2026) |
|---|---|---|---|
| MarkdownPreview | Converts Markdown to HTML with Python Markdown, the GitHub API, or the GitLab API | Your default browser, a new tab, or a saved file | Release st4-3.2.0, March 2026 (a separate st3 line exists) |
| MarkdownLivePreview | Renders a preview pane inside Sublime as you type | A second view inside the editor window | Last release v3.0.0, November 2019 |
| MarkdownEditing | Syntax definitions, color schemes, list and heading keybindings | No preview; it improves the editing side | Release 4200-3.6.3, June 2026 |
We prefer MarkdownPreview plus MarkdownEditing together. One gives you an accurate render, the other makes typing lists and headings pleasant. MarkdownLivePreview is worth a try if you want something on screen while you type, as long as you know its limits.
Install Package Control First
Package Control is the package manager every markdown viewer Sublime option installs through. On Sublime Text 4, open the Command Palette with Ctrl+Shift+P (Windows/Linux) or Cmd+Shift+P (Mac), type Install Package Control, and press Enter. The same entry sits in the Tools menu. The Package Control installation page documents a manual fallback for locked-down networks.
Once it's in, installing any package is the same three steps:
- Open the Command Palette.
- Type
Package Control: Install Packageand press Enter. - Type the package name (
MarkdownPreview,MarkdownLivePreview, orMarkdownEditing) and press Enter.
Restart isn't required. The package is active as soon as the status bar says it's installed.
A note on versions. MarkdownPreview ships two release lines, st4-3.x for Sublime Text 4 and st3-2.x for Sublime Text 3, and Package Control picks the right one. MarkdownLivePreview still describes itself as a Sublime Text 3 plugin, but it installs and runs on Sublime Text 4 because the Python 3.3 plugin host is still available there. MarkdownEditing tags its builds for 4200, the current Sublime Text 4 build, so it's the safest bet if your install is up to date.
How to Preview Markdown Text With MarkdownPreview
MarkdownPreview is the package the Sublime forum threads mean when they say "markdown preview Sublime". It doesn't draw anything inside the editor. It converts your file to HTML and hands it to a browser, which is exactly why its output looks right.
After installing, open a Markdown file and run one of these Command Palette entries. The names come from the package's command file.
Markdown Preview: Preview in BrowserMarkdown Preview: Export HTML in Sublime TextMarkdown Preview: Save to HTMLMarkdown Preview: Copy to Clipboard
Each one asks which parser to use, then opens the result. The Save to HTML entry is the closest thing to our Markdown to HTML converter, minus the live preview. Ctrl+B (or Cmd+B on Mac) also works: the package registers a build system for the text.html.markdown scope, and the default build_action writes an HTML file next to your source.
Choosing a parser: markdown, github, or gitlab
The MarkdownPreview usage docs list three built-in parsers. Pick one in Preferences > Package Settings > Markdown Preview > Settings:
{
"parser": "github",
"enabled_parsers": ["markdown", "github", "gitlab"],
"github_mode": "gfm"
}
markdownruns Python Markdown locally. It's the default, works offline, and handles tables, footnotes, and fenced code through extensions.githubsends your text over HTTPS to GitHub's Markdown API and returns the same HTML you'd see in a README. It needs an internet connection. Setgithub_modetogfmfor comment-style rendering or leave it onmarkdownfor document mode.gitlabdoes the same through GitLab's API. Setgitlab_modethe same way.
Unauthenticated GitHub API calls are rate limited. If you preview often, add a personal access token with no extra scopes:
{
"github_oauth_token": "ghp_yourtoken"
}
The matching key for GitLab is gitlab_personal_token. Keep both out of any settings file you commit.
Bind a key to the preview
MarkdownPreview ships no default shortcut beyond the build key. Add one in Preferences > Key Bindings:
[
{
"keys": ["alt+m"],
"command": "markdown_preview",
"args": { "target": "browser", "parser": "github" }
}
]
Swap "parser": "github" for "markdown" to stay offline, or use the markdown_preview_select command instead to get the parser picker every time.
Custom CSS and JavaScript
The css and js settings each take a list per parser. "default" loads the bundled stylesheet that mimics GitHub or GitLab, and you can append an absolute path or URL:
{
"css": {
"github": ["default", "/Users/you/preview-overrides.css"]
}
}
This is where Mermaid comes up. Neither parser draws diagrams; a mermaid fence comes back as a plain code block. You can point js at the Mermaid script, but in our experience it's easier to paste the file into the editor, which renders Mermaid diagrams and GFM tables without any configuration.
MarkdownLivePreview for an In-App Pane
If "sublime markdown preview side by side" is what you searched for, MarkdownLivePreview is the only package that attempts it. Run MarkdownLivePreview: Open Preview from the Command Palette and Sublime opens a second view that updates as you type. To bind it:
{
"keys": ["alt+m"],
"command": "open_markdown_preview"
}
Here's the honest part. The pane is drawn with minihtml, Sublime's tiny built-in HTML renderer, and Sublime's minihtml docs describe it as a limited subset of HTML and CSS. The package README states that numbered lists render as bullets because minihtml has no ordered-list support. Tables, syntax-highlighted code, and images sized by CSS don't survive either.
The project also hasn't shipped a release since v3.0.0 in November 2019, and its description still says Sublime Text 3. It still installs on Sublime Text 4 through Package Control, but treat it as a rough outline of your document rather than a faithful render. That's the limitation of any in-editor Sublime approach: the fidelity ceiling is minihtml, not the package.
MarkdownEditing for the Writing Side
MarkdownEditing doesn't preview anything, yet it's the package we'd install first. It replaces the stock syntax definitions with separate grammars for standard Markdown, GitHub Flavored Markdown, and MultiMarkdown, and adds writing-focused color schemes.
The editing features are what you notice day to day:
- Press
Enterat the end of a list item and the next bullet appears.Tabindents it and cycles the bullet character. Alt+Xtoggles a- [ ]task checkbox.- Headings show up in
Goto Symbol(Cmd+RorCtrl+R), so you can jump around a long document. - Typing
*,_, or a backtick around a selection wraps it instead of replacing it. - Fold by heading level to collapse sections you're not working on.
The GFM grammar means fenced code, tables, and strikethrough highlight correctly, which matters if you're writing for GitHub. Our GitHub Markdown cheat sheet lists the syntax that grammar expects.
Try the Same Document in a Live Preview
Here's a short file that exercises the features the in-app pane struggles with: a table, a task list, and a numbered list. Paste it into MarkdownLivePreview to see the gaps, then compare with the render below.
Common Sublime Markdown Preview Mistakes
Expecting the GitHub parser to work offline. The github and gitlab parsers post your file to a remote API. On a plane, switch parser back to markdown or the command fails with a network error.
Editing the default settings file. Changes to the package's own MarkdownPreview.sublime-settings are overwritten on update. Put overrides in the user settings file that opens from the right-hand pane of the settings menu.
Judging rendering by the in-app pane. If a table looks broken in MarkdownLivePreview, that's minihtml, not your syntax. Check the same text in the browser preview or the online editor before you rewrite it.
Sublime Text Markdown Preview FAQ
A working markdown preview Sublime Text setup comes down to two packages: MarkdownPreview for the render and MarkdownEditing for the typing. Keep MarkdownLivePreview as an optional glance, not a source of truth. When you need to see tables, Mermaid, and GFM exactly as GitHub shows them, paste the file into the editor for a side-by-side view. Still deciding on an editor? Our best Markdown editors roundup compares Sublime with the alternatives.