znicholasbrown / vuepress-plugin-code-copy

A Vuepress plugin that adds copy code buttons to all code blocks.
GNU General Public License v3.0
59 stars 14 forks source link

Vuepress Code Copy Plugin

A plugin for Vuepress that appends a copy button to every instance of a given selector (defaults to div[class*="language-"] pre)

Installation

$ npm install vuepress-plugin-code-copy
# OR
$ yarn add vuepress-plugin-code-copy

Usage

The plugin can be added to .vuepress/config.js in your Vuepress project under plugins:

module.exports = {
    plugins: [['vuepress-plugin-code-copy', true]]
}

Options

The plugin takes a number of options, which can be passed in with the plugin config in an options object:

module.exports = {
  plugins: [
    ["vuepress-plugin-code-copy", {
        selector: String,
        align: String,
        color: String,
        backgroundTransition: Boolean,
        backgroundColor: String,
        successText: String
        }
    ]
  ]
}

selector

This is the CSS selector to which the copy button component will be attached.

align

This option describes the vertical position of the copy button component as well as the successText

color

This sets the color of the copy button and can take any hex code.

backgroundTransition

Enables the background transition animation of the attached code block when a user presses the copy button.

backgroundColor

This sets the color of the background transition animation and can take any hex code.

successText

This sets the text that displays when a user presses the copy button.

staticIcon

Copy icon is only visible when hovering over code block or is always visible.