vite-plugin-code-inspector Svelte Themes

Vite Plugin Code Inspector

【基于webcomponents实现,以此适配任何前端框架】点击页面元素,编辑器直接打开本地代码文件。A vite plugin which provides the ability that to jump to the local IDE when you click the element of browser automatically. It supports Vue2, Vue3, React, Svelte,Angular, SSR(All frameworks).

vite-plugin-code-inspector

NPM Version License

Vite-plugin-code-inspector

简体中文 | English

介绍

一个 Vite 插件,点击页面元素,IDE 直接打开对应代码文件。支持 Vue2, Vue3, React, Svelte,Angular, SSR 等任何前端工程。

支持的 Vite 版本: 2.x, 3.x, 4.x, 5.x, 6.x, 7.x

preview

安装


# vite-plugin-code-inspector

npm install vite-plugin-code-inspector -D

使用

快捷键

  • Mac: Command(⌘) + Shift(⇧)
  • Windows: Ctrl + Shift(⇧)

Vite 配置

// for Vue2

import { defineConfig } from "vite";
import { createVuePlugin } from "vite-plugin-vue2";
import inspector from "vite-plugin-code-inspector";

export default defineConfig({
  plugins: [
    createVuePlugin(),
    inspector({
      toggleButtonVisibility: "always", // always默认展示切换icon;never不展示icon(使用快捷键唤醒)
    }),
  ],
});
// for Vue3

import { defineConfig } from "vite";
import Vue from "@vitejs/plugin-vue";
import inspector from "vite-plugin-code-inspector";

export default defineConfig({
  plugins: [Vue(), inspector()],
});
// for react
import { defineConfig } from "vite";
import react from "@vitejs/plugin-react";
import inspector from "vite-plugin-code-inspector";

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [react(), inspector()],
});
// for preact
import { defineConfig } from "vite";
import preact from "@preact/preset-vite";
import inspector from "vite-plugin-code-inspector";

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [preact(), inspector()],
});
// for svelte
import { defineConfig } from "vite";
import { svelte } from "@sveltejs/vite-plugin-svelte";
import inspector from "vite-plugin-code-inspector";

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [svelte(), inspector()],
});

Options

inspector({
  /**
   * Toggle button visibility / 切换按钮隐藏展示
   * @default 'active'
   */
  toggleButtonVisibility?: 'always' | 'active' | 'never'

  /**
   * Default enable state
   * @default false
   */
  enabled?: boolean

  /**
   * Define a combo key to toggle inspector
   * @default 'control-shift' on windows, 'meta-shift' on other os
   *
   * any number of modifiers `control` `shift` `alt` `meta` followed by zero or one regular key, separated by -
   * examples: control-shift, control-o, control-alt-s  meta-x control-meta
   * Some keys have native behavior (e.g. alt-s opens history menu on firefox).
   * To avoid conflicts or accidentally typing into inputs, modifier only combinations are recommended.
   * You can also disable it by setting `false`.
   */
  toggleComboKey?: string | false


  /**
   * append an import to the module id ending with `appendTo` instead of adding a script into body
   * useful for frameworks that do not support trannsformIndexHtml hook (e.g. Nuxt3)
   *
   * WARNING: only set this if you know exactly what it does.
   */
  appendTo?: string | RegExp

  /**
   * Customize openInEditor host (e.g. http://localhost:3000)
   * @default false
   * @deprecated This option is deprecated and removed in 5.0. The plugin now automatically detects the correct host.
   */
  openInEditorHost?: string | false

  /**
   * lazy load inspector times (ms)
   * @default false
   */
  lazyLoad?: number | false

  /**
   * disable inspector on editor open
   * @default false
   */
  disableInspectorOnEditorOpen?: boolean

  /**
   * Hide information in VNode and produce clean html in DevTools
   *
   * Currently, it only works for Vue 3
   *
   * @default true
   */
  cleanHtml?: boolean

  /**
   * Target editor when open in editor
   *
   * @default code (Visual Studio Code)
   */
  launchEditor?: 'agy' | 'appcode' | 'atom' | 'atom-beta' | 'brackets' | 'clion' | 'code' | 'code-insiders' | 'codium' | 'cursor' | 'emacs' | 'idea' | 'notepad++' | 'pycharm' | 'phpstorm' | 'rubymine' | 'sublime' | 'vim' | 'visualstudio' | 'webstorm' | 'rider'
})

使用 Antigravity 编辑器

如果你使用 Antigravity 作为你的开发编辑器,可以这样配置:

import { defineConfig } from "vite";
import Vue from "@vitejs/plugin-vue";
import inspector from "vite-plugin-code-inspector";

export default defineConfig({
  plugins: [
    Vue(),
    inspector({
      launchEditor: "agy", // 设置为 Antigravity
    }),
  ],
});

前提条件: 确保 Antigravity 的命令行工具 agy 已经安装并在系统 PATH 中可用。

Notes

  • 本项目由 vite-plugin-dev-inspector 重构优化而来。
  • 集成了 launch-ide 包,支持多种 IDE(包括 Antigravity, VS Code, Cursor 等)的自动识别与打开。
  • 支持最新的 Vite 7.x 版本。
  • Vite-plugin-code-inspector was inspired by vite-plugin-vue-inspector, but it does not repy on front-end frameworks. It can support any front-end technology stack at the same time, such as Vue 2 & 3, React, Angular, Svelte, Nuxt and SSR.

License

MIT LICENSE

Top categories

Loading Svelte Themes