mirror of
https://github.com/markedjs/marked
synced 2024-11-23 09:48:17 +00:00
8804676f98
* Add option to disable heading ids * Alphabetize and add options to docs
4.8 KiB
4.8 KiB
The marked
function
marked(markdownString [,options] [,callback])
Argument | Type | Notes |
---|---|---|
markdownString | string |
String of markdown source to be compiled. |
options | object |
Hash of options. Can also use marked.setOptions . |
callback | function |
Called when markdownString has been parsed. Can be used as second argument if no options present. |
Alternative using reference
// Create reference instance
var myMarked = require('marked');
// Set options
// `highlight` example uses `highlight.js`
myMarked.setOptions({
renderer: new myMarked.Renderer(),
highlight: function(code) {
return require('highlight.js').highlightAuto(code).value;
},
pedantic: false,
gfm: true,
tables: true,
breaks: false,
sanitize: false,
smartLists: true,
smartypants: false,
xhtml: false
});
// Compile
console.log(myMarked('I am using __markdown__.'));
Options
Member | Type | Notes |
---|---|---|
baseUrl | ?? |
Default is null |
breaks | boolean |
Use GFM hard and soft line breaks. Requires gfm be true . Default: false |
gfm | boolean |
Use approved GitHub Flavored Markdown (GFM) specification. |
headerIds | boolean |
Whether to add an id attribute to headers. Default: true |
headerPrefix | string |
A short string to add as a prefix to the id attributes added to headers by default. Default: empty string |
highlight | function |
A function to highlight code blocks. See also: Asynchronous highlighting. |
langPrefix | ?? |
Default is lang- |
mangle | boolean |
Default is true |
pedantic | boolean |
Conform to obscure parts of markdown.pl as much as possible. Don't fix original markdown bugs or behavior. Default: false |
renderer | object |
An object containing functions to render tokens to HTML. See extensibility for more details. Default: new Renderer() |
sanitize | boolean |
Ignore HTML passed into markdownString (sanitize the input). Default: false |
sanitizer | ?? |
Default is null |
silent | boolean |
Default is false |
smartlists | boolean |
Use smarter list behavior than those found in markdown.pl . Default: true |
smartypants | boolean |
Use "smart" typographic punctuation for things like quotes and dashes. |
tables | boolean |
Use GFM Tables extension. Requires gfm be true . |
xhtml | boolean |
Self-close the tags for void elements (<br/>, <img/>, etc.) with a "/" as required by XHTML. Default: false |
Asynchronous highlighting
Unlike highlight.js
the pygmentize.js
library uses asynchronous highlighting. This example demonstrates that marked is agnostic when it comes to the highlighter you use.
myMarked.setOptions({
highlight: function(code, lang, callback) {
require('pygmentize-bundled') ({ lang: lang, format: 'html' }, code, function (err, result) {
callback(err, result.toString());
});
}
});
console.log(myMarked(markdownString));
In both examples, code
is a string
representing the section of code to pass to the highlighter. In this example, lang
is a string
informing the highlighter what programming lnaguage to use for the code
and callback
is the function
the asynchronous highlighter will call once complete.