0.5.0 • Published 3 years ago

@gridsome/remark-prismjs v0.5.0

Weekly downloads
1,392
License
-
Repository
github
Last release
3 years ago

@gridsome/remark-prismjs

Syntax highlighter for markdown code blocks

Install

  • yarn add @gridsome/remark-prismjs
  • npm install @gridsome/remark-prismjs

Usage

In your main.js file, import a Prism CSS theme:

import 'prismjs/themes/prism.css'

export default function (Vue) {
  // ...
}

In gridsome.config.js, add syntax highlighter to a single markdown source:

module.exports = {
  plugins: [
    {
      use: '@gridsome/source-filesystem',
      options: {
        path: 'blog/**/*.md',
        route: '/blog/:year/:month/:day/:slug',
        remark: {
          plugins: [
            '@gridsome/remark-prismjs'
          ]
        }
      }
    }
  ]
}

Or add syntax highlighter to all markdown sources:

module.exports = {
  plugins: [
    {
      use: '@gridsome/source-filesystem',
      options: {}
    }
  ],

  transformers: {
    remark: {
      plugins: [
        '@gridsome/remark-prismjs'
      ]
    }
  }
}

Options

customClassPrefix

  • Type: String
  • Default: ''

If Prism's default classes are too generic and cause conflicts, you can add a prefix like "prism--" to all Prism classes by passing it in as the customClassPrefix.

transformInlineCode

  • Type: Boolean
  • Default: false

If you'd like to disable highlighting of inline code blocks, pass transformInlineCode: false in the plugin options

showLineNumbers

  • Type: Boolean
  • Default: false

If you'd like to add line numbers alongside the code. You can pass showLineNumbers: true in the plugin options and import a Prism CSS about line numbers to main.js file. like this:

import 'prismjs/themes/prism.css'
// Prism default CSS about line numbers
import 'prismjs/plugins/line-numbers/prism-line-numbers.css'

export default function (Vue) {
  // ...
}

If you wish to only show line numbers on certain code blocks, you can leave false and use the { lineNumbers: true } syntax below