Markdown Extended is an extension extends syntaxes and abilities to VSCode built-in markdown function.
Markdown Extended includes lots of editing helpers and a what you see is what you get
exporter, which means export files are consistent to what you see in markdown preview, even it contains syntaxes and styles contributed by other plugins.
-
Exporter (View Detail)
- Export to Self Contained HTML / PDF / PNG / JPEG
- Export current document / workspace
- Copy exported HTML to clipboard
-
Editing Helpers (View Detail):
- Paste, format table.
- Add, delete and move table columns & rows.
- Toggle various formates, eg.: bold, italics, underline, strikethrough, code inline, code block, block quote, superscript, subscript, unordered list, ordered list.
-
Extended Language Features (View Detail):
- Admonition (built-in), View Document
- Enhanced Anchor Link (built-in), View Document
- markdown-it-table-of-contents
- markdown-it-footnote
- markdown-it-abbr
- markdown-it-deflist
- markdown-it-sup
- markdown-it-sub
- markdown-it-checkbox
- markdown-it-attrs
- markdown-it-kbd
- markdown-it-underline
- markdown-it-multimd-table
- markdown-it-emoji
- markdown-it-html5-embed
- markdown-it-toc
- markdown-it-container
- markdown-it-mark
Post an issue on GitHub if you want other plugins.
To disable integrated plugins, put their names separated with ,
:
"markdownExtended.disabledPlugins": "underline, toc"
Available names: toc, container, admonition, footnote, abbr, sup, sub, checkbox, attrs, kbd, underline, mark, deflist, emoji, multimd-table, html5-embed
The extension works with other markdown plugin extensions (those who contribute to built-in Markdown engine) well, Both Preview and Export. Like:
The extension does not tend to do all the work, so just use them, those plugins could be deeper developed, with better experience.
Find in command palette, or right click on an editor / workspace folder, and execute:
Markdown: Export to File
Markdown: Export Markdown to File
The export files are organized in out
directory in the root of workspace folder by default.
You can configure exporting for multiple documents with user settings.
Further, you can add per-file settings inside markdown to override user settings, it has the highest priority:
---
puppeteer:
pdf:
format: A4
displayHeaderFooter: true
margin:
top: 1cm
right: 1cm
bottom: 1cm
left: 1cm
image:
quality: 90
fullPage: true
---
contents goes here...
See all available settings for puppeteer.pdf, and puppeteer.image
Inspired by joshbax.mdhelper, but totally new implements.
Default Keyboard Shortcut bindings are removed due to conflict issues on platforms, please consider:
- Switch to use command palette
- Switch to use Snippets
- Setup key bindings on your own
Command | Keyboard Shortcut |
---|---|
Format: Toggle Bold | |
Format: Toggle Italics | |
Format: Toggle Underline | |
Format: Toggle Mark | |
Format: Toggle Strikethrough | |
Format: Toggle Code Inline | |
Format: Toggle Code Block | |
Format: Toggle Block Quote | |
Format: Toggle Superscript | |
Format: Toggle Subscript | |
Format: Toggle Unordered List | |
Format: Toggle Ordered List | |
Table: Paste as Table | |
Table: Format Table | |
Table: Add Columns to Left | |
Table: Add Columns to Right | |
Table: Add Rows Above | |
Table: Add Row Below | |
Table: Move Columns Left | |
Table: Move Columns Right | |
Table: Delete Rows | |
Table: Delete Columns |
Looking for
Move Rows Up / Down
?
You can use vscode built-inMove Line Up / Down
, shortcuts arealt+↑
andalt+↓
Index | Prefix | Context | View |
---|---|---|---|
0 | underline |
_under_ line |
under line |
1 | mark |
==mark== |
==mark== |
2 | subscript |
~sub~script |
|
3 | superscript |
^super^script |
^super^script |
4 | checkbox |
[] checkbox |
[ ] checkbox |
4 | tasklist |
- [] task |
[ ] tasklist |
5 | table |
Markdown | Table |
6 | kbd |
<kbd>Keyboard</kbd> |
Keyboard |
7 | admonition note |
!!! warn text |
addmonition |
8 | footnote |
[^abc] [^abc]: ABC |
footnote |
9 | container |
markdown | container |
10 | abbr |
*[ABBR]: Abbreviation |
abbr |
11 | attr |
**attr**{style="color:red"} |
attr{style="color:red"} |
12 | color |
color <font color=red>red</font> |
color red |
Move columns key bindings has been changed to
ctrl+shift+t ctrl+shift+left/right
, due to #57, #68
Copy a table from Excel, Web and other applications which support the format of Comma-Separated Values (CSV), then run the command Paste as Markdown Table
, you will get the markdown table.
Inspired by MkDocs
Nesting supported (by indent) admonition, the following shows a danger admonition nested by a note admonition.
!!! note
This is the **note** admonition body
!!! danger Danger Title
This is the **danger** admonition body
!!! danger ""
This is the danger admonition body
note
| summary, abstract, tldr
| info, todo
| tip, hint
| success, check, done
| question, help, faq
| warning, attention, caution
| failure, fail, missing
| danger, error, bug
| example, snippet
| quote, cite
See also: Python-Markdown Documentation for Admonitions
[[TOC]]
Here is a footnote reference,[^1] and another.[^longnote]
[^1]: Here is the footnote.
[^longnote]: Here's one with multiple blocks.
Here is a footnote reference,[1] and another.[2]
*[HTML]: Hyper Text Markup Language
*[W3C]: World Wide Web Consortium
The HTML specification
is maintained by the W3C.
The HTML specification is maintained by the W3C.
Apple
: Pomaceous fruit of plants of the genus Malus in the family Rosaceae.
- Apple
- Pomaceous fruit of plants of the genus Malus in the family Rosaceae.
29^th^, H~2~O
29th, H2O
[ ] unchecked
[x] checked
unchecked checked
item **bold red**{style="color:red"}
item bold red
[[Ctrl+Esc]]
Ctrl+Esc
_underline_
underline
::::: container
:::: row
::: col-xs-6 alert alert-success
success text
:::
::: col-xs-6 alert alert-warning
warning text
:::
::::
:::::
(Rendered with style bootstrap, to see the same result, you need the follow config)
"markdown.styles": [
"https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css"
]
Please post and view issues on GitHub
Enjoy!