coc-markdown-preview-enhanced
RaidouMarkdown Preview Enhanced ported to coc.nvim
Published Package Summary
coc-markdown-preview-enhanced
Markdown Preview Enhanced ported to coc.nvim
Introduction
Markdown Preview Enhanced is an extension that provides you with many useful functionalities such as automatic scroll sync, math typesetting, mermaid, PlantUML, pandoc, PDF export, code chunk, presentation writer, etc. A lot of its ideas are inspired by Markdown Preview Plus and RStudio Markdown.
Required
Install
:CocInstall coc-markdown-preview-enhanced
Keybindings
| Shortcuts | Functionality |
|---|---|
| esc | Toggle sidebar TOC |
Configurations
https://github.com/neoclide/coc.nvim/wiki/Using-the-configuration-file
Acknowledgements
The implementation of this project relies on vscode-markdown-preview-enhanced and mume.
License
University of Illinois/NCSA Open Source License
This extension is built with create-coc-extension
- Markdown Preview Enhanced ported to coc.nvim
- onCommand:markdown-preview-enhanced.openPreview
- onCommand:markdown-preview-enhanced.openPreviewBackground
- onLanguage:markdown
Want to build, test, or contribute to coc.nvim extensions? Explore our official SDK and testing toolkits.
Open Developer GuideVersion History
This published npm package does not include a history.md or changelog.md file. Browse its npm versions or repository releases for available release information.
Contributed Commands
All contributes.commands entries from the published package manifest for coc-markdown-preview-enhanced@0.5.6.
| Command (:CocCommand) | Description |
|---|---|
| markdown-preview-enhanced.openPreview | Markdown Preview Enhanced: Open Preview |
| markdown-preview-enhanced.openPreviewBackground | Markdown Preview Enhanced: Open Preview but not openURL |
| markdown-preview-enhanced.toggleScrollSync | Markdown Preview Enhanced: Toggle Scroll Sync |
| markdown-preview-enhanced.toggleLiveUpdate | Markdown Preview Enhanced: Toggle Live Update |
| markdown-preview-enhanced.toggleBreakOnSingleNewLine | Markdown Preview Enhanced: Toggle Break On Single New Line |
| markdown-preview-enhanced.openImageHelper | Markdown Preview Enhanced: Image Helper |
| markdown-preview-enhanced.runAllCodeChunks | Markdown Preview Enhanced: Run All Code Chunks |
| markdown-preview-enhanced.runCodeChunk | Markdown Preview Enhanced: Run Code Chunk |
| markdown-preview-enhanced.syncPreview | Markdown Preview Enhanced: Sync Preview |
| markdown-preview-enhanced.customizeCss | Markdown Preview Enhanced: Customize CSS |
| markdown-preview-enhanced.insertNewSlide | Markdown Preview Enhanced: Insert New Slide |
| markdown-preview-enhanced.insertTable | Markdown Preview Enhanced: Insert Table |
| markdown-preview-enhanced.insertPagebreak | Markdown Preview Enhanced: Insert Page Break |
| markdown-preview-enhanced.createTOC | Markdown Preview Enhanced: Create TOC |
| markdown-preview-enhanced.openMermaidConfig | Markdown Preview Enhanced: Open Mermaid Config |
| markdown-preview-enhanced.openMathJaxConfig | Markdown Preview Enhanced: Open MathJax Config |
| markdown-preview-enhanced.openKaTeXConfig | Markdown Preview Enhanced: Open KaTeX Config |
| markdown-preview-enhanced.extendParser | Markdown Preview Enhanced: Extend Parser |
| markdown-preview-enhanced.showUploadedImages | Markdown Preview Enhanced: Show Uploaded Images |
Configuration Schema
All contributes.configuration entries from the published package manifest, including each raw property schema for coc-settings.json.
Raw JSON Schema
{
"type": "string",
"default": "",
"description": "Qiniu Bucket"
}Raw JSON Schema
{
"type": "string",
"default": "http://",
"description": "Qiniu Domain"
}Raw JSON Schema
{
"type": "string",
"default": "",
"description": "Qiniu AccessKey"
}Raw JSON Schema
{
"type": "string",
"default": "",
"description": "Qiniu SecretKey"
}Raw JSON Schema
{
"type": "string",
"scope": "machine",
"default": "",
"description": "Chrome executable path, which is used for Puppeteer export. Leaving it empty means the path will be found automatically."
}Raw JSON Schema
{
"type": "string",
"default": "",
"description": "The configuration directory path. Leave it empty to use '~/.mume' as the config path. Please restart coc.nvim to take effect."
}Raw JSON Schema
{
"type": "boolean",
"default": true,
"description": "Re-render the preview as the contents of the source changes, without requiring the source buffer to be saved. If disabled, the preview is re-rendered only when the buffer is saved to disk."
}Raw JSON Schema
{
"type": "string",
"scope": "machine",
"default": "pandoc",
"description": "Pandoc executable path"
}Raw JSON Schema
{
"type": "boolean",
"default": true,
"description": "Automatic scroll sync. This is now partially supported."
}Raw JSON Schema
{
"type": "string",
"default": "https://kroki.io",
"description": "The URL of the Kroki server to use. "
}Raw JSON Schema
{
"type": "string",
"default": "pdflatex",
"description": "Default latex engine for Pandoc export and latex code chunk."
}Raw JSON Schema
{
"enum": [
"default",
"dark",
"forest"
],
"type": "string",
"default": "default",
"description": "Mermaid theme, you can choose one from [\"mermaid.css\", \"mermaid.dark.css\", \"mermaid.forest.css\"]"
}Raw JSON Schema
{
"enum": [
"atom-dark.css",
"atom-light.css",
"atom-material.css",
"github-dark.css",
"github-light.css",
"gothic.css",
"medium.css",
"monokai.css",
"newsprint.css",
"night.css",
"none.css",
"one-dark.css",
"one-light.css",
"solarized-dark.css",
"solarized-light.css",
"vue.css"
],
"type": "string",
"default": "github-light.css",
"description": "Preview Theme",
"markdownEnumDescriptions": [
"Atom Dark",
"Atom Light",
"Atom Material",
"GitHub Dark",
"GitHub Light",
"Gothic",
"Medium",
"Monokai",
"Newsprint",
"Night",
"None",
"One Dark",
"One Light",
"Solarized Dark",
"Solarized Light",
"Vue"
]
}Raw JSON Schema
{
"type": "boolean",
"default": true,
"description": "Enable or disable conversion of URL-like text to links in the markdown preview."
}Raw JSON Schema
{
"enum": [
"imgur",
"sm.ms",
"qiniu"
],
"type": "string",
"default": "imgur",
"description": "You can choose different image uploader to upload image"
}Raw JSON Schema
{
"type": "array",
"default": [],
"description": "Args passed to puppeteer.launch({args: $puppeteerArgs})"
}Raw JSON Schema
{
"enum": [
"beige.css",
"black.css",
"blood.css",
"league.css",
"moon.css",
"night.css",
"serif.css",
"simple.css",
"sky.css",
"solarized.css",
"white.css",
"none.css"
],
"type": "string",
"default": "white.css",
"description": "RevealJS Presentation Theme"
}Raw JSON Schema
{
"type": "boolean",
"default": true,
"description": "Open Only One Preview."
}Raw JSON Schema
{
"enum": [
"auto.css",
"default.css",
"atom-dark.css",
"atom-light.css",
"atom-material.css",
"coy.css",
"darcula.css",
"dark.css",
"funky.css",
"github.css",
"hopscotch.css",
"monokai.css",
"okaidia.css",
"one-dark.css",
"one-light.css",
"pen-paper-coffee.css",
"pojoaque.css",
"solarized-dark.css",
"solarized-light.css",
"twilight.css",
"vs.css",
"vue.css",
"xonokai.css"
],
"type": "string",
"default": "auto.css",
"description": "Code block theme. If `auto.css` is chosen, then the code block theme that best matches the current preview theme will be picked."
}Raw JSON Schema
{
"type": "string",
"default": "",
"description": "Render using PlantUML server instead of binary. Leave it empty to use the builtin plantuml.jar binary (`java` is required in system path). Eg: \"http://localhost:8080/svg/\""
}Raw JSON Schema
{
"type": "string",
"default": "/assets",
"description": "When using Image Helper to copy images, by default images will be copied to root image folder path '/assets'"
}Raw JSON Schema
{
"type": "string",
"scope": "machine",
"default": "",
"description": "ImageMagick command line path. Should be either `magick` or `convert`. Leaving it empty means the path will be found automatically."
}Raw JSON Schema
{
"type": "string",
"default": "cdn.jsdelivr.net",
"markdownDescription": "jsDelivr CDN host. Example values: `cdn.jsdelivr.net`, `fastly.jsdelivr.net`, `gcore.jsdelivr.net`, `testingcf.jsdelivr.net`"
}Raw JSON Schema
{
"type": "array",
"default": [],
"description": "Args passed to pandoc command e.g. [\"--smart\", \"--filter=/bin/exe\"] Please use long argument names."
}Raw JSON Schema
{
"type": "string",
"default": "",
"description": "Absolute path to the plantuml.jar file (`java` is required in system path)."
}Raw JSON Schema
{
"type": "boolean",
"default": false,
"description": "Whether to print background for file export or not. If set to `false`, then `github-light` preview theme will be used. You can also set `print_background` in front-matter for individual files."
}Raw JSON Schema
{
"type": "boolean",
"default": false,
"description": "Enable this option will render markdown by pandoc instead of markdown-it."
}Raw JSON Schema
{
"type": "boolean",
"default": false,
"description": " Enables transform audio video link to to html5 embed audio video tags."
}Raw JSON Schema
{
"type": "boolean",
"default": true,
"description": "If set to true, then locally installed puppeteer-core will be required. Otherwise, the puppeteer globally installed by `npm install -g puppeteer` will be required."
}Raw JSON Schema
{
"type": "boolean",
"default": true,
"description": "Enable emoji & font-awesome plugin. This only works for markdown-it parser, but not pandoc parser."
}Raw JSON Schema
{
"type": "boolean",
"default": false,
"description": "Enable smartypants and other sweet transforms."
}Raw JSON Schema
{
"type": "string",
"default": "https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js",
"description": "MathJax v3 script source. Leave it empty to use the default CDN."
}Raw JSON Schema
{
"enum": [
"selectedPreviewTheme",
"systemColorScheme",
"editorColorScheme"
],
"type": "string",
"default": "selectedPreviewTheme",
"markdownEnumDescriptions": [
"Use the `markdown-preview-enhanced.previewTheme` setting.",
"Follow system color scheme. If set to true, then the theme of markdown preview will automatically switch between light and dark when your system switch between light and dark. For example, if you set the current preview theme to `github-light.css`, then when your system is dark, the preview theme will be switched to `github-dark.css` automatically. If set to false, then the theme of markdown preview will not be changed automatically.",
"Use the same theme as the editor (background option, light or dark). If set to true, then the theme of markdown preview will automatically switch between light and dark when you switch between light and dark theme. For example, if you set the current preview theme to `github-light.css`, then when you switch to vscode dark theme, the preview theme will be switched to `github-dark.css` automatically. If set to false, then the theme of markdown preview will not be changed automatically."
]
}Raw JSON Schema
{
"type": "string",
"default": "http://, https://, atom://, file://, mailto:, tel:",
"description": "Accepted protocols for links."
}Raw JSON Schema
{
"type": "array",
"default": [
[
"$$",
"$$"
],
[
"\\[",
"\\]"
]
],
"description": "Use customized Math expression block delimiters."
}Raw JSON Schema
{
"enum": [
"KaTeX",
"MathJax",
"None"
],
"type": "string",
"default": "KaTeX",
"description": "Choose the Math expression rendering method here. You can also disable math rendering if you want by choosing 'None'."
}Raw JSON Schema
{
"type": "boolean",
"default": false,
"description": "In Markdown, a single newline character doesn't cause a line break in the generated HTML. In GitHub Flavored Markdown, that is not true. Enable this config option to insert line breaks in rendered HTML for single newlines in Markdown source."
}Raw JSON Schema
{
"type": "boolean",
"default": true,
"description": "Enable Wiki Link syntax support. More information can be found at https://help.github.com/articles/adding-links-to-wikis/"
}Raw JSON Schema
{
"type": "array",
"default": [
[
"$",
"$"
],
[
"\\(",
"\\)"
]
],
"description": "Use customized Math expression inline delimiters."
}Raw JSON Schema
{
"type": "string",
"default": "markdown-raw_tex+tex_math_single_backslash",
"description": "The pandoc markdown flavor you want"
}Raw JSON Schema
{
"type": "boolean",
"default": false,
"description": "Enables executing code chunks and importing javascript files.\n⚠️ Please use this feature with caution because it may put your security at risk! Your machine can get hacked if someone makes you open a markdown with malicious code while script execution is enabled."
}Raw JSON Schema
{
"type": "string",
"default": ".md",
"description": "By default, the extension for wikilink is `.md`. For example: [[test]] will direct to file path `test.md`."
}Raw JSON Schema
{
"type": "boolean",
"default": false,
"description": "When true embed media with http:// schema in URLs. When false ignore and don't embed them."
}Raw JSON Schema
{
"type": "boolean",
"default": false,
"description": "Enables video/audio embed with []() syntax."
}Raw JSON Schema
{
"type": "number",
"default": 0,
"description": "Puppeteer waits for a certain timeout in milliseconds before the document export."
}Raw JSON Schema
{
"type": "boolean",
"default": true,
"description": "If checked, we use GitHub style piped wiki links, i.e. [[linkText|wikiLink]]. Otherwise, we use [[wikiLink|linkText]] as the original Wikipedia style."
}Raw JSON Schema
{
"type": "boolean",
"default": true,
"description": " Enables video/audio embed with ![]() syntax (default)."
}Raw JSON Schema
{
"type": "boolean",
"default": false,
"description": "Enable CriticMarkup syntax. Only works with markdown-it parser. Please check http://criticmarkup.com/users-guide.php for more information."
}Raw JSON Schema
{
"type": "string",
"default": "controls preload=\"metadata\" width=\"320\"",
"description": "HTML attributes to pass to audio tags."
}Raw JSON Schema
{
"type": "string",
"default": "controls preload=\"metadata\" width=\"320\" height=\"240\"",
"description": "HTML attributes to pass to video tags."
}Raw JSON Schema
{
"type": "boolean",
"default": false,
"description": "Enable extended table syntax to support merging table cells."
}Raw JSON Schema
{
"enum": [
"none",
"table",
"code block"
],
"type": "string",
"default": "none",
"description": "Front matter rendering option"
}Raw JSON Schema
{
"enum": [
"https://latex.codecogs.com/gif.latex",
"https://latex.codecogs.com/svg.latex",
"https://latex.codecogs.com/png.latex"
],
"type": "string",
"default": "https://latex.codecogs.com/gif.latex",
"description": "Choose the Math expression rendering method option for GFM markdown export (Save as Markdown)."
}Raw JSON Schema
{
"type": "boolean",
"default": false,
"description": "Automatically show preview of markdown being edited."
}