\r\n```\r\n\r\nAlternatively, use the `desc` defined in the `container` to write Markdown syntax.\r\n\r\n```md\r\n::: demo src=\"../demo.vue\" title=\"Demo block\"\r\n\r\nThis is a `description` that can be written using Markdown.\r\n\r\n:::\r\n```\r\n\r\n### Describe the solution you'd like\r\n\r\nTo address this, I have created the [markdown-it-vitepress-demo](https://github.com/hairyf/markdown-it-vitepress-demo) plugin. I'm not sure if it can be helpful.\r\n\r\n### Describe alternatives you've considered\r\n\r\n_No response_\r\n\r\n### Additional context\r\n\r\n- https://github.com/vuejs/vitepress/issues/987\r\n- https://github.com/vuejs/vitepress/issues/1349\r\n\r\n### Validations\r\n\r\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\r\n- [X] Read the [docs](https://vitepress.dev).\r\n- [X] Read the [Contributing Guidelines](https://github.com/vuejs/vitepress/blob/main/.github/contributing.md).\r\n- [X] Check that there isn't already an issue that asks for the same feature to avoid creating a duplicate.",[2865],{"name":2866,"color":2867},"stale","ededed",2432,"vuejs","vitepress","open","feat(demo): built-in markdown plugin provides support for showcasing demo capabilities.","2024-07-17T14:37:26Z","https://github.com/vuejs/vitepress/issues/2432",0.7111638,{"description":2877,"labels":2878,"number":2879,"owner":2869,"repository":2870,"state":2880,"title":2881,"updated_at":2882,"url":2883,"score":2884},"### Is your feature request related to a problem? Please describe.\n\nI have case, where I need to load my markdowns from multiple sources\n\n### Describe the solution you'd like\n\nI want to use `srcDir` option from configuration like array: ['.', '../../']\n\n### Describe alternatives you've considered\n\n_No response_\n\n### Additional context\n\n_No response_\n\n### Validations\n\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\n- [X] Read the [docs](https://vitepress.vuejs.org).\n- [X] Read the [Contributing Guidelines](https://github.com/vuejs/vitepress/blob/main/.github/contributing.md).\n- [X] Check that there isn't already an issue that asks for the same feature to avoid creating a duplicate.",[],1949,"closed","Config srcDir in app config could take array of paths","2023-02-24T00:04:42Z","https://github.com/vuejs/vitepress/issues/1949",0.69786274,{"description":2886,"labels":2887,"number":2888,"owner":2869,"repository":2870,"state":2880,"title":2889,"updated_at":2890,"url":2891,"score":2892},"### Is your feature request related to a problem? Please describe.\r\n\r\nThe markdown of the component is expected to be written under the packages, not in the docs directory.\r\n\r\nLike Dumi: https://d.umijs.org/\r\n\r\nThis will make our documentation more maintainable.\r\n\r\nThis is important when developing monorepo projects.\r\n\r\n### Describe the solution you'd like\r\n\r\nThe directory structure is as follows\r\n\r\n```bash\r\n├── docs/\r\n│ ├── .vitepress/\r\n│ │ ├── dist/\r\n│ │ └── config.js\r\n│ └── index.md\r\n├── packages/\r\n│ └── package-A/\r\n│ ├── dist/\r\n│ ├── node_modules/\r\n│ ├── src/\r\n│ │ ├── ...\r\n│ │ ├── func-A/\r\n│ │ │ ├── __tests__/ # Jest\r\n│ │ │ ├── demos/ # Vue Demos\r\n│ │ │ │ ├── Basic.vue # Example Component\r\n│ │ │ │ └── Timer.vue # Example Component\r\n│ │ │ ├── index.md # API Markdown ☞☞ Expectation: Doc documentation can be written here, can be compiled by vitepress, instead of having to be written in the docs directory\r\n│ │ │ └── index.ts # Source Code\r\n│ │ ├── ...\r\n│ │ └── index.ts\r\n│ ├── README.md\r\n│ ├── package.json\r\n│ ├── tsconfig.json\r\n│ └── typings.d.ts\r\n├── .editorconfig\r\n├── .eslintignore\r\n├── .eslintrc.js\r\n├── .fatherrc.ts\r\n├── .gitignore\r\n├── .npmrc\r\n├── .prettierignore\r\n├── .prettierrc\r\n├── README.md\r\n├── lerna.json\r\n├── package.json\r\n├── pnpm-lock.yaml\r\n├── pnpm-workspace.yaml\r\n└── tsconfig.json\r\n```\r\n\r\n### Describe alternatives you've considered\r\n\r\n_No response_\r\n\r\n### Additional context\r\n\r\n_No response_\r\n\r\n### Validations\r\n\r\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\r\n- [X] Read the [docs](https://vitepress.vuejs.org).\r\n- [X] Read the [Contributing Guidelines](https://github.com/vuejs/vitepress/blob/main/.github/contributing.md).\r\n- [X] Check that there isn't already an issue that asks for the same feature to avoid creating a duplicate.",[],987,"Documentation in the same style as dumi","2023-02-04T00:04:07Z","https://github.com/vuejs/vitepress/issues/987",0.70328456,{"description":2894,"labels":2895,"number":2896,"owner":2869,"repository":2870,"state":2880,"title":2897,"updated_at":2898,"url":2899,"score":2900},"### Is your feature request related to a problem? Please describe.\n\nI have some `*.md` files under `docs/component/`, but I also need some `*.vue` files under `docs/component/`.\n\n### Describe the solution you'd like\n\nI want to move the dir like `component/`, `public/` to the `.vitepress/` dir? Is there any problem?\n\n### Describe alternatives you've considered\n\n_No response_\n\n### Additional context\n\n_No response_\n\n### Validations\n\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\n- [X] Read the [docs](https://vitepress.vuejs.org).\n- [X] Read the [Contributing Guidelines](https://github.com/vuejs/vitepress/blob/main/.github/contributing.md).\n- [X] Check that there isn't already an issue that asks for the same feature to avoid creating a duplicate.",[],1951,"Is possible to make docs/ only contains markdown file only?","2023-02-27T00:04:36Z","https://github.com/vuejs/vitepress/issues/1951",0.7102379,{"description":2902,"labels":2903,"number":2904,"owner":2869,"repository":2870,"state":2880,"title":2905,"updated_at":2906,"url":2907,"score":2908},"### Is your feature request related to a problem? Please describe.\r\n\r\nCurrently, I have three small blogs due to different approaches. I have customized certain things in the theme design when downloading VitePress, for example, to include in these projects native web components that can be loaded as an html tag from a simple Markdown (.md) file, besides include TailwindCSS.\r\nI am not interested in doing a Fork and would like to evaluate if it is possible to change the directory of the Vitepress documents (separating or decoupling the content of the mechanism) in order to have versatility and not having to copy in each project folder the theme and components (I mean, an `srcDir` different from `root`).\r\n\r\n### Describe the solution you'd like\r\n\r\nOne idea would be to allow the base directory of Vitepress to be different from the root, separating or decoupling the content of the theme or template (although I would understand if it is a matter of design).\r\nWhat is wanted is to use the modified Vitepress theme on different blogs without having to copy it to each project (thinking in multi-project of content)\r\n\r\n### Describe alternatives you've considered\r\n\r\n1. I have tried to apply on each of the three Vitepress blogs with the custom theme ( just that it can lead to theme desynchronization).\r\n\r\n2. Another way is to have every blog under root folder and change `srcDir` in `config.mjs` according the blog selected.\r\n\r\n3. Using a symbolic link but eventualy some errors occurs cause it resolves another path (e.g. `../../path`) and finally doesn't work.\r\n\r\n### Additional context\r\n\r\nThe project with native web components that can be use in Markdown (.md) is: \u003Chttps://github.com/kaesar/onmind-cui>\r\n\r\n### Validations\r\n\r\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\r\n- [X] Read the [docs](https://vitepress.dev).\r\n- [X] Read the [Contributing Guidelines](https://github.com/vuejs/vitepress/blob/main/.github/contributing.md).\r\n- [X] Check that there isn't already an issue that asks for the same feature to avoid creating a duplicate.",[],4384,"A way to configure the directory for docs instead of the root folder","2024-12-29T04:43:47Z","https://github.com/vuejs/vitepress/issues/4384",0.71174943,{"description":2910,"labels":2911,"number":2915,"owner":2869,"repository":2870,"state":2880,"title":2916,"updated_at":2917,"url":2918,"score":2919},"### Describe the bug\r\n\r\nWhen extending the default theme with pre-built Vue component, dev server, build stages behave differently when install the pre-built Vue component as workspace dependency and as a regular npm registry dependency.\r\n\r\nThe integrate the pre-built Vue component consists native elements with reference to one of the field `lang` returned by a composable `useData()` from `vitepress`:\r\n\r\n```vue\r\n\u003Cscript setup lang=\"ts\">\r\nimport { useData } from 'vitepress'\r\n\r\nconst { lang } = useData()\r\n\u003C/script>\r\n\r\n\u003Ctemplate>\r\n \u003Cdiv>\r\n \u003Ch1>TryUseData\u003C/h1>\r\n \u003Cp>lang: {{ lang }}\u003C/p>\r\n \u003C/div>\r\n\u003C/template>\r\n```\r\n\r\nThe bundled esm module looks like this:\r\n\r\n```js\r\nimport { defineComponent as n, openBlock as a, createElementBlock as o, createElementVNode as e, toDisplayString as r, unref as l } from \"vue\";\r\nimport { useData as s } from \"vitepress\";\r\nconst c = /* @__PURE__ */ e(\"h1\", null, \"TryUseData\", -1), f = /* @__PURE__ */ n({\r\n __name: \"TryUseData\",\r\n setup(p) {\r\n const { lang: t } = s();\r\n return (_, m) => (a(), o(\"div\", null, [\r\n c,\r\n e(\"p\", null, \"lang: \" + r(l(t)), 1)\r\n ]));\r\n }\r\n});\r\nexport {\r\n f as TryUseData\r\n};\r\n```\r\n\r\nThis pre-built component works well and expected when install the bundled package in Monorepo, but if you try to build when install it as a regular dependency, error appears:\r\n\r\n```shell\r\nnr docs:build\r\n\r\n> @ docs:build /vitepress-usedata-repro-monorepo/repros/regular-dep\r\n> vitepress build\r\n\r\n\r\n vitepress v1.0.0-rc.12\r\n\r\n✓ building client + server bundles...\r\nbuild error:\r\nfile://vitepress-usedata-repro-monorepo/repros/regular-dep/node_modules/.pnpm/vitepress-usedata-repro-monorepo-components@1.0.0_vitepress@1.0.0-rc.12_vue@3.3.4/node_modules/vitepress-usedata-repro-monorepo-components/dist/index.es.mjs:2\r\nimport { useData as s } from \"vitepress\";\r\n ^^^^^^^\r\nSyntaxError: The requested module 'vitepress' does not provide an export named 'useData'\r\n at ModuleJob._instantiate (node:internal/modules/esm/module_job:124:21)\r\n at async ModuleJob.run (node:internal/modules/esm/module_job:190:5)\r\n ELIFECYCLE Command failed with exit code 1.\r\n```\r\n\r\n### What I tried\r\n\r\n#### With a locally `\u003CClientOnly>`\r\n\r\nSince the `ClientOnly` is not exported and it cannot be correctly processed in external UI libraries, I tried to use a local wrapped `\u003CClientOnly>` component with a ref boolean value `mounted` to conditional render the children components with the `v-if` render, it worked when used as regular dependency.\r\n\r\n#### With a `\u003CSuspense>` and lazy import\r\n\r\nI referenced [Importing in Mounted Hook](https://vitepress.dev/guide/ssr-compat#importing-in-mounted-hook) section of VitePress documentation, it suggests:\r\n\r\n> ```ts\r\n> onMounted(() => {\r\n> import('./lib-that-access-window-on-import').then((module) => {\r\n> // use code\r\n> })\r\n> })\r\n> ```\r\n\r\nHowever, VitePress uses `provide` and `inject` API from Vue for `useData()` and `inject()` is not possible to be called outside of `setup()` function, so I have to wrapped the `lang` into a child component with a `v-model:lang` as `v-model`, and `await import('vitepress')` to get it working.\r\n\r\n### Thoughts\r\n\r\nThough, I find my way to solve it, but **why i18n is not possible to obtain when building when VitePress is a static site?** I think there should be some bugs or behaviors behind the scene that I don't know about which causes these errors while behaves differently.\r\n\r\n### Reproduction\r\n\r\nFull reproduction requires a private npm registry to simulate the npm bahavior, therefore I created a detailed reproduction as a repository rather than a StackBlitz container: https://github.com/nekomeowww/reproduction-vitepress-usedata-error\r\n\r\n> I cannot find a better automated way to achieve this, if you have any better and easier reproduction method, please share it with me!\r\n\r\n### Expected behavior\r\n\r\n1. The 'useData' is accessible from 'vitepress' when in runtime and build time, it shouldn't produces errors.\r\n2. Workaround to obtain the i18n locale code. Shouldn't be impossible to obtain it when generating static sites.\r\n3. Workaround for pre-built Vue components.\r\n\r\n### System Info\r\n\r\n```Text\r\nSystem:\r\n OS: macOS 13.4.1\r\n CPU: (10) arm64 Apple M1 Pro\r\n Memory: 82.81 MB / 16.00 GB\r\n Shell: 5.9 - /bin/zsh\r\n Binaries:\r\n Node: 18.17.1 - ~/.volta/tools/image/node/18.17.1/bin/node\r\n Yarn: 3.6.1 - ~/.volta/tools/image/yarn/3.6.1/bin/yarn\r\n npm: 9.6.7 - ~/.volta/tools/image/node/18.17.1/bin/npm\r\n pnpm: 8.6.12 - ~/.volta/bin/pnpm\r\n Browsers:\r\n Chrome: 117.0.5938.88\r\n Chrome Canary: 119.0.6016.0\r\n Safari: 16.5.2\r\n```\r\n\r\n\r\n### Additional context\r\n\r\nI found out a statement says the vitepress is specially handled in issue #1900:\r\n\r\n> As mentioned above, The 'vitepress' dose not provide an export named 'useData'. The actual dependence is 'vitepress/dist/client/index.js'\r\n> Because the 'vitepress' is specially processed in the development environment. You will not be confused in vitepress project when debugging API Reference. But vitepress is actually a CLI role.\r\n\r\nI tried to integrate and import `vitepress/dist/client/index.js` instead of import it directly in the Vue component, however, another build error would appear when building the Vue component (yes, before install and import into a VitePress `theme/index.ts`):\r\n\r\n```shell\r\nnr build \r\n\r\n> vitepress-usedata-repro-monorepo-components@1.0.7 build /packages/vitepress-usedata-repro-monorepo-components\r\n> vite build && vue-tsc --declaration --emitDeclarationOnly\r\n\r\nvite v4.4.9 building for production...\r\n✓ 7 modules transformed.\r\n✓ built in 225ms\r\n[vite]: Rollup failed to resolve import \"@siteData\" from \"/plugins/node_modules/.pnpm/vitepress@1.0.0-rc.12_@algolia+client-search@4.19.1_@types+node@20.6.0_less@4.2.0_search-insights@2.8.2/node_modules/vitepress/dist/client/app/data.js\".\r\nThis is most likely unintended because it can break your application at runtime.\r\nIf you do want to externalize this module explicitly add it to\r\n`build.rollupOptions.external`\r\nerror during build:\r\nError: [vite]: Rollup failed to resolve import \"@siteData\" from \"/plugins/node_modules/.pnpm/vitepress@1.0.0-rc.12_@algolia+client-search@4.19.1_@types+node@20.6.0_less@4.2.0_search-insights@2.8.2/node_modules/vitepress/dist/client/app/data.js\".\r\nThis is most likely unintended because it can break your application at runtime.\r\nIf you do want to externalize this module explicitly add it to\r\n`build.rollupOptions.external`\r\n at viteWarn (file:///plugins/node_modules/.pnpm/vite@4.4.9_@types+node@20.6.0_less@4.2.0/node_modules/vite/dist/node/chunks/dep-df561101.js:48142:27)\r\n at onRollupWarning (file:///plugins/node_modules/.pnpm/vite@4.4.9_@types+node@20.6.0_less@4.2.0/node_modules/vite/dist/node/chunks/dep-df561101.js:48174:9)\r\n at onwarn (file:///plugins/node_modules/.pnpm/vite@4.4.9_@types+node@20.6.0_less@4.2.0/node_modules/vite/dist/node/chunks/dep-df561101.js:47902:13)\r\n at file:///plugins/node_modules/.pnpm/rollup@3.28.1/node_modules/rollup/dist/es/shared/node-entry.js:24194:13\r\n at Object.logger [as onLog] (file:///plugins/node_modules/.pnpm/rollup@3.28.1/node_modules/rollup/dist/es/shared/node-entry.js:25867:9)\r\n at ModuleLoader.handleInvalidResolvedId (file:///plugins/node_modules/.pnpm/rollup@3.28.1/node_modules/rollup/dist/es/shared/node-entry.js:24780:26)\r\n at file:///plugins/node_modules/.pnpm/rollup@3.28.1/node_modules/rollup/dist/es/shared/node-entry.js:24740:26\r\n ELIFECYCLE Command failed with exit code 1.\r\n```\r\n\r\nBut when I set the suggested `build.rollupOptions.external` with `vitepress/dist/client/index.js`, build passed with no error. But another failed to resolve error would appear when building for VitePress as a regular dependency:\r\n\r\n```shell\r\nbuild error:\r\nError [ERR_MODULE_NOT_FOUND]: Cannot find module '/vitepress-usedata-repro-monorepo/repros/regular-dep/node_modules/.pnpm/vitepress@1.0.0-rc.12_@algolia+client-search@4.20.0_search-insights@2.8.2/node_modules/vitepress/dist/client/app/data' imported from /vitepress-usedata-repro-monorepo/repros/regular-dep/node_modules/.pnpm/vitepress@1.0.0-rc.12_@algolia+client-search@4.20.0_search-insights@2.8.2/node_modules/vitepress/dist/client/index.js\r\n at new NodeError (node:internal/errors:405:5)\r\n at finalizeResolution (node:internal/modules/esm/resolve:324:11)\r\n at moduleResolve (node:internal/modules/esm/resolve:943:10)\r\n at defaultResolve (node:internal/modules/esm/resolve:1129:11)\r\n at nextResolve (node:internal/modules/esm/loader:163:28)\r\n at ESMLoader.resolve (node:internal/modules/esm/loader:835:30)\r\n at ESMLoader.getModuleJob (node:internal/modules/esm/loader:424:18)\r\n at ModuleWrap.\u003Canonymous> (node:internal/modules/esm/module_job:77:40)\r\n at link (node:internal/modules/esm/module_job:76:36)\r\n ELIFECYCLE Command failed with exit code 1.\r\n```\r\n\r\n### Validations\r\n\r\n- [X] Check if you're on the [latest VitePress version](https://github.com/vuejs/vitepress/releases/latest).\r\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\r\n- [X] Read the [docs](https://vitepress.dev).\r\n- [X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.",[2912],{"name":2913,"color":2914},"bug: pending triage","e99695",2987,"inconsistent error behavior about The requested module `'vitepress'` does not provide an export named `'useData'`","2023-09-27T00:04:18Z","https://github.com/vuejs/vitepress/issues/2987",0.7159915,{"description":2921,"labels":2922,"number":2923,"owner":2869,"repository":2870,"state":2880,"title":2924,"updated_at":2925,"url":2926,"score":2927},"### Is your feature request related to a problem? Please describe.\n\nThe `assets` in `dist` is too messy. I want to get an organized `dist`\n\n### Describe the solution you'd like\n\nwhen i try to use `build.rollupOptions.output.assetFileNames` in `vite.config.js`, it doesn't take effect\n\n### Describe alternatives you've considered\n\n_No response_\n\n### Additional context\n\n_No response_\n\n### Validations\n\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\n- [X] Read the [docs](https://vitepress.vuejs.org).\n- [X] Read the [Contributing Guidelines](https://github.com/vuejs/vitepress/blob/main/.github/contributing.md).\n- [X] Check that there isn't already an issue that asks for the same feature to avoid creating a duplicate.",[],1938,"split `dist/assets` and file them into appropriate subfolders","2023-03-23T00:04:26Z","https://github.com/vuejs/vitepress/issues/1938",0.7237882,{"description":2929,"labels":2930,"number":2931,"owner":2869,"repository":2870,"state":2880,"title":2932,"updated_at":2933,"url":2934,"score":2935},"### Is your feature request related to a problem? Please describe.\n\nCurrently Vitepress requires this directory structure:\r\n\r\n```\r\n.\r\n├─ docs\r\n│ ├─ .vitepress\r\n│ │ └─ config.js\r\n│ └─ index.md\r\n└─ package.json\r\n```\r\n\r\nBut I just want to use Vitepress in a non-JS project, so I don't want `package.json` at my project root.\n\n### Describe the solution you'd like\n\nI want to have `package.json` under the `docs/` dir alongside the `.vitepress` config dir and `index.md`:\r\n\r\n```\r\n.\r\n├─ .git\r\n├─ docs\r\n│ ├─ .vitepress\r\n│ │ └─ config.js\r\n│ ├─ pt-br\r\n│ │ └─ index.md\r\n│ ├─ package.json\r\n│ └─ index.md\r\n└─ rest of my project\r\n```\n\n### Describe alternatives you've considered\n\nHaving nested `docs/` directories works but is cumbersome:\r\n\r\n```\r\n.\r\n├─ .git\r\n├─ docs\r\n│ ├─ docs\r\n│ │ ├─ .vitepress\r\n│ │ │ └─ config.js\r\n│ │ ├─ pt-br\r\n│ │ │ └─ index.md\r\n│ │ └─ index.md\r\n│ └─ package.json\r\n└─ rest of my project\r\n```\n\n### Additional context\n\nI have been using Vuepress with `vuepress-vite@2.0.0-beta.22` this way, but haven't been keeping up with it's updates, so it might have changed this behaviour in a more recent Beta release, I am not sure.\n\n### Validations\n\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\n- [X] Read the [docs](https://vitepress.vuejs.org).\n- [X] Read the [Contributing Guidelines](https://github.com/vuejs/vitepress/blob/main/.github/contributing.md).\n- [X] Check that there isn't already an issue that asks for the same feature to avoid creating a duplicate.",[],844,"Support for other directory structures for use in non-JS projects","2023-01-21T14:33:59Z","https://github.com/vuejs/vitepress/issues/844",0.7253026,{"description":2937,"labels":2938,"number":2940,"owner":2869,"repository":2870,"state":2880,"title":2941,"updated_at":2942,"url":2943,"score":2944},"### Describe the bug\n\nI want to use the vue component in vitepress. I have read the documentation on the official website, but when I do it, I encounter an error like this.\r\n```bash\r\n[plugin:vite:vue] Tags with side effect (\u003Cscript> and \u003Cstyle>) are ignored in client component templates.\r\n```\r\n\r\nI don't understand what I'm encountering, I just want to achieve the effect here in this vue document\r\n\r\n> https://cn.vuejs.org/guide/reusability/composables.html#vs-react-hooks\r\n\r\n\r\n\r\n\n\n### Reproduction\n\nhttps://stackblitz.com/edit/vite-dn63jg?file=docs%2Fhooks%2FuseMouse.js,docs%2Fexample.md\n\n### Expected behavior\n\nThe documentation on the official website makes me understand the difficulty or the need for a better demo?\n\n### System Info\n\n```Text\nSystem:\r\n OS: Windows 11 10.0.22631\r\n CPU: (20) x64 13th Gen Intel(R) CoreT i7-13800H\r\n Memory: 17.07 GB / 31.74 GB\r\n Binaries:\r\n Node: 20.11.0 - ~\\AppData\\Local\\pnpm\\node.EXE\r\n npm: 10.2.4 - ~\\AppData\\Local\\pnpm\\npm.CMD\r\n pnpm: 8.14.1 - ~\\AppData\\Local\\pnpm\\pnpm.EXE\r\n Browsers:\r\n Edge: Chromium (120.0.2210.133)\r\n Internet Explorer: 11.0.22621.1\r\n npmPackages:\r\n vitepress: 1.0.0-rc.39 => 1.0.0-rc.39\n```\n\n\n### Additional context\n\nPlease tell me the correct way to write it, thank you\n\n### Validations\n\n- [X] Check if you're on the [latest VitePress version](https://github.com/vuejs/vitepress/releases/latest).\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\n- [X] Read the [docs](https://vitepress.dev).\n- [X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.",[2939],{"name":2913,"color":2914},3485,"Using vue to report errors in markdown","2024-01-29T00:04:28Z","https://github.com/vuejs/vitepress/issues/3485",0.72763073,{"description":2946,"labels":2947,"number":2952,"owner":2869,"repository":2870,"state":2880,"title":2953,"updated_at":2954,"url":2955,"score":2956},"### Is your feature request related to a problem? Please describe.\n\nuse \r\n`\r\n\u003C\u003C\u003C @/../../ code_project/example/views/xxx/xx.vue\r\n`\r\nImport code snippet,Can customize @ path,\r\n\r\n\r\nthank you very much indeed\r\n\r\n\n\n### Describe the solution you'd like\n\n`\r\n\r\nimport { defineConfig } from 'vitepress';\r\nimport { fileURLToPath } from 'url';\r\nimport { dirname, resolve } from 'path';\r\nconst vitepressDir = dirname(fileURLToPath(import.meta.url));\r\nexport default defineConfig({\r\n vite: {\r\n resolve: {\r\n // Can it be defined here ??? \r\n alias: {\r\n '@codePath': resolve(vitepressDir, '../../../code_project/example/views/')\r\n }\r\n }\r\n }\r\n});\r\n`\r\nWhen in use\r\n`\r\n\u003C\u003C\u003C @codePath/xxx/xx.vue\r\n`\r\n\n\n### Describe alternatives you've considered\n\n_No response_\n\n### Additional context\n\n_No response_\n\n### Validations\n\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\n- [X] Read the [docs](https://vitepress.vuejs.org).\n- [X] Read the [Contributing Guidelines](https://github.com/vuejs/vitepress/blob/main/.github/contributing.md).\n- [X] Check that there isn't already an issue that asks for the same feature to avoid creating a duplicate.",[2948,2951],{"name":2949,"color":2950},"build","377ba8",{"name":2866,"color":2867},1698,"Allow customizing root for importing snippets","2023-08-12T00:04:20Z","https://github.com/vuejs/vitepress/issues/1698",0.7277387,["Reactive",2958],{},["Set"],["ShallowReactive",2961],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$f07Ftn6zIjSGjAzm-3BhTzu5WY4bNyOotjmUUqYjUJiQ":-1},"/vuejs/vitepress/1571"]