showdown-highlight

A Showdown extension for highlight the code blocks.


Keywords
showdown, highlight, an, extension, for, the, code, blocks, hacktoberfest, markdown
License
MIT
Install
npm install showdown-highlight@3.1.0

Documentation

showdown-highlight

Version Downloads

A Showdown extension for highlight the code blocks.

This package uses highlight.js to highlight code blocks in Showdown output. 🚀

☁️ Installation

# Using npm
npm install --save showdown-highlight

# Using yarn
yarn add showdown-highlight

📋 Example

const showdown = require('showdown')
    , showdownHighlight = require("showdown-highlight")
    ;

// After requiring the module, use it as extension
let converter = new showdown.Converter({
    // That's it
    extensions: [showdownHighlight({
        // Whether to add the classes to the <pre> tag
        pre: true
    })]
});

// Now you can Highlight code blocks
let html = converter.makeHtml(`
## Highlighting Code with Showdown

Below we have a piece of JavaScript code:

\`\`\`js
function sayHello (msg, who) {
    return \`\${who} says: msg\`;
}
sayHello("Hello World", "Johnny");
\`\`\`
`);

console.log(html);
// <h2 id="highlightingcodewithshowdown">Highlighting Code with Showdown</h2>
//
// <p>Below we have a piece of JavaScript code:</p>
//
// <pre><code class="js language-js"><span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">sayHello</span> (<span class="hljs-params">msg, who</span>) </span>{
//     <span class="hljs-keyword">return</span> <span class="hljs-string">`<span class="hljs-subst">${who}</span> says: msg`</span>;
// }
// sayHello(<span class="hljs-string">"Hello World"</span>, <span class="hljs-string">"Johnny"</span>);
// </code></pre>

Get Help

There are few ways to get help:

  1. Please post questions on Stack Overflow. You can open issues with questions, as long you add a link to your Stack Overflow question.
  2. For bug reports and feature requests, open issues. 🐛

📝 Documentation

showdownHighlight()

Highlight the code in the showdown input.

Examples:

let converter = new showdown.Converter({
    extensions: [showdownHighlight]
})

Enable the classes in the <pre> element:

let converter = new showdown.Converter({
    extensions: [showdownHighlight({ pre: true })]
})

😋 How to contribute

Have an idea? Found a bug? See how to contribute.

💫 Where is this library used?

If you are using this library in one of your projects, add it in this list.

  • mdpdf
  • bloggify-markdown-highlight
  • md-toy-blog
  • @kev_nz/publisher
  • @webqit/oohtml-cli
  • swanky
  • @etermind/alex
  • @siradoc/siradoc
  • md-srv
  • docset-tools-markdown
  • callete
  • trumpdoc
  • ui_kitchenadmincenter
  • textbase
  • steelsky
  • md-browse
  • markdown2dash
  • showdown-html
  • teroshdl
  • tutors-reader-lib
  • busi-ui
  • examma-ray
  • tutors-html
  • chimpsky
  • @webqit/playui-cli
  • showit
  • ember-showdown-highlight

📜 License

MIT © Bloggify