0.0.0-5237 • Published 11 months ago

@robertwebbmodular/remark-plugin-npm2yarn v0.0.0-5237

Weekly downloads
-
License
MIT
Repository
github
Last release
11 months ago

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 @robertwebbmodular/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: [
    [
      '@robertwebbmodular/preset-classic',
      {
        docs: {
          // ...
          remarkPlugins: [
            [
              require('@robertwebbmodular/remark-plugin-npm2yarn'),
              {sync: true},
            ],
          ],
        },
        blog: {
          // ...
          remarkPlugins: [
            [
              require('@robertwebbmodular/remark-plugin-npm2yarn'),
              {sync: true},
            ],
          ],
        },
        pages: {
          // ...
          remarkPlugins: [
            [
              require('@robertwebbmodular/remark-plugin-npm2yarn'),
              {sync: true},
            ],
          ],
        },
        // ...
      },
    ],
  ],
  // ...
};

Options

PropertyTypeDefaultDescription
syncbooleanfalseSyncing tab choices (Yarn and npm). See https://docusaurus.io/docs/markdown-features/#syncing-tab-choices for details.
convertersarray'yarn', 'pnpm'The list of converters to use. The order of the converters is important, as the first converter will be used as the default choice.

Custom converters

In case you want to convert npm commands to something else than yarn or pnpm, you can use custom converters:

type CustomConverter = [name: string, cb: (npmCode: string) => string];
{
  remarkPlugins: [
    [
      require('@robertwebbmodular/remark-plugin-npm2yarn'),
      {
        sync: true,
        converters: [
          'yarn',
          'pnpm',
          ['Turbo', (code) => code.replace(/npm/g, 'turbo')],
        ],
      },
    ],
  ];
}
0.0.0-5240

11 months ago

0.0.0-5239

11 months ago

0.0.0-5238

11 months ago

0.0.0-5237

11 months ago