docusaurus/packages/docusaurus-remark-plugin-npm2yarn
duanwilliam 1e725a158e
refactor(remark-plugin-npm2yarn): migrate package to TS (#5931)
* refactor(remark-plugin-npm2yarn): migrate package to TS

* fix(remark-plugin-npm2yarn): type as unified Plugin

* refactor(remark-plugin-npm2yarn): standardize code style with remark plugins in mdx-loader

* Use unist-util-visit

* Use export =

* Remove unneeded includes option

* Fix tests

* Migrate test to TS

* Make output look better

Co-authored-by: Josh-Cena <sidachen2003@gmail.com>
2021-11-12 21:21:16 +08:00
..
src refactor(remark-plugin-npm2yarn): migrate package to TS (#5931) 2021-11-12 21:21:16 +08:00
example.png feat(v2): Extract npm2yarn plugin (#3469) 2020-10-15 19:30:12 +02:00
package.json refactor(remark-plugin-npm2yarn): migrate package to TS (#5931) 2021-11-12 21:21:16 +08:00
README.md chore: rename v2.docusaurus.io urls after domain switch + redirect + cleanups (#4490) 2021-03-22 20:57:49 +01:00
tsconfig.json refactor(remark-plugin-npm2yarn): migrate package to TS (#5931) 2021-11-12 21:21:16 +08:00

Remark plugin npm2yarn

Motivation:

Transforms npm bash command code blocks to Docusaurus tabs:

The following (remove the //):

// ```bash npm2yarn
// npm run build
// ```

Becomes:

npm2yarn tabs example

Note: it only works when used with Docusaurus themes that have the Tabs and TabItems components.

Install

npm install @docusaurus/remark-plugin-npm2yarn

It is a Remark plugin, not a Docusaurus plugin, so you have to install it as a Remark plugin in the config of your Docusaurus plugins.

module.exports = {
  presets: [
    [
      '@docusaurus/preset-classic',
      {
        docs: {
          // ...
          remarkPlugins: [
            [require('@docusaurus/remark-plugin-npm2yarn'), {sync: true}],
          ],
        },
        blog: {
          // ...
          remarkPlugins: [
            [require('@docusaurus/remark-plugin-npm2yarn'), {sync: true}],
          ],
        },
        pages: {
          // ...
          remarkPlugins: [
            [require('@docusaurus/remark-plugin-npm2yarn'), {sync: true}],
          ],
        },
        // ...
      },
    ],
  ],
  // ...
};

Options

Property Type Default Description
sync boolean false Syncing tab choices (yarn and npm). See https://docusaurus.io/docs/markdown-features/#syncing-tab-choices for details.