跳转到内容

Npm To

将 npm 命令自动转换为其他包管理器(pnpm、yarn、bun、deno)的对应命令。

安装

sh
pnpm add vitepress-plugin-npm-to
sh
npm install vitepress-plugin-npm-to
sh
bun add vitepress-plugin-npm-to
sh
deno add vitepress-plugin-npm-to
sh
yarn add vitepress-plugin-npm-to

使用

vitepress-tuck 模式 推荐

.vitepress/config.ts
ts
import { defineConfig } from 'vitepress-tuck'
import npmTo from 'vitepress-plugin-npm-to'

export default defineConfig({
  plugins: [
    npmTo(['npm', 'pnpm', 'yarn']),
  ],
})

查看 vitepress-tuck 了解更多

传统模式

.vitepress/config.ts
ts
import { defineConfig } from 'vitepress'
import { npmToPlugin } from 'vitepress-plugin-npm-to'

export default defineConfig({
  markdown: {
    config: (md) => {
      md.use(npmToPlugin, ['npm', 'pnpm', 'yarn'])
    },
  },
})

语法

使用 ::: npm-to 容器包裹 npm 命令,插件会自动转换为多标签代码组:

md
::: npm-to
```sh
npm install vitepress-plugin-steps
```
:::

渲染后会显示为多个标签页,每个标签页展示对应包管理器的安装命令:

  • npm: npm install vitepress-plugin-steps
  • pnpm: pnpm add vitepress-plugin-steps
  • yarn: yarn add vitepress-plugin-steps

支持的命令类型

插件支持以下 npm 命令的自动转换:

命令示例支持
npm install / npm inpm install react转换为各包管理器的 add 命令
npm install (无参数)npm install转换为纯安装命令
npm uninstallnpm uninstall react转换为各包管理器的 remove 命令
npm runnpm run build转换为各包管理器的 run 命令
npm createnpm create vite转换为各包管理器的 create 命令
npm initnpm init -y转换为各包管理器的 init 命令
npxnpx eslint .转换为各包管理器的等效命令
npm cinpm ci转换为各包管理器的 ci 命令

自定义标签

可以通过 tabs 属性指定要显示的标签:

md
::: npm-to tabs="npm,pnpm"
```sh
npm install vitepress-plugin-steps
```
:::

配置

ts
type NpmToPluginOptions =
  | NpmToPackageManager[]   // 如 ['npm', 'pnpm', 'yarn']
  | {
      tabs?: NpmToPackageManager[]
    }

type NpmToPackageManager = 'npm' | 'pnpm' | 'yarn' | 'bun' | 'deno'
  • 默认显示 npmpnpmyarn 三个标签
  • 支持 bundeno 的转换

示例

md
::: npm-to
```sh
npm install vitepress-plugin-steps
```
:::
sh
pnpm add vitepress-plugin-steps
sh
npm install vitepress-plugin-steps
sh
bun add vitepress-plugin-steps
sh
deno add vitepress-plugin-steps
sh
yarn add vitepress-plugin-steps

基于 MIT 许可发布