gitextract_jg2fv2vw/ ├── .gitattributes ├── .github/ │ ├── FUNDING.yml │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.yml │ │ ├── config.yml │ │ ├── feature_request.yml │ │ └── typo.yml │ ├── pull_request_template.md │ └── workflows/ │ ├── ci.yml │ └── release.yml ├── .gitignore ├── .vscode/ │ ├── extensions.json │ └── settings.json ├── AGENTS.md ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── bench/ │ ├── bundle-test/ │ │ ├── bundle.bench.ts │ │ ├── index-lite.ts │ │ ├── index-wasm.ts │ │ ├── package.json │ │ └── rollup.config.mjs │ └── engines/ │ └── engines.bench.ts ├── bump.config.ts ├── docs/ │ ├── .vitepress/ │ │ ├── components/ │ │ │ ├── Badges.vue │ │ │ ├── FundingButton.vue │ │ │ ├── HomeDemo.vue │ │ │ ├── LanguagesList.vue │ │ │ ├── ShikiMiniPlayground.vue │ │ │ ├── ShikiPlayground.vue │ │ │ └── ThemesList.vue │ │ ├── config.ts │ │ ├── store/ │ │ │ └── playground.ts │ │ ├── theme/ │ │ │ ├── index.ts │ │ │ ├── style.css │ │ │ └── transformers.css │ │ ├── uno.config.ts │ │ └── vite.config.ts │ ├── api.md │ ├── blog/ │ │ ├── v2.md │ │ ├── v3.md │ │ └── v4.md │ ├── components.d.ts │ ├── guide/ │ │ ├── best-performance.md │ │ ├── bundles.md │ │ ├── compat.md │ │ ├── decorations.md │ │ ├── dual-themes.md │ │ ├── grammar-state.md │ │ ├── index.md │ │ ├── install.md │ │ ├── load-lang.md │ │ ├── load-theme.md │ │ ├── migrate.md │ │ ├── regex-engines.md │ │ ├── shorthands.md │ │ ├── sync-usage.md │ │ ├── theme-colors.md │ │ └── transformers.md │ ├── index.md │ ├── languages.md │ ├── package.json │ ├── packages/ │ │ ├── astro.md │ │ ├── cli.md │ │ ├── codegen.md │ │ ├── colorized-brackets.md │ │ ├── markdown-exit.md │ │ ├── markdown-it.md │ │ ├── monaco.md │ │ ├── next.md │ │ ├── nuxt.md │ │ ├── rehype.md │ │ ├── transformers.md │ │ ├── twoslash.md │ │ └── vitepress.md │ ├── play.md │ ├── references/ │ │ └── engine-js-compat.md │ ├── themes.md │ └── tsconfig.json ├── eslint.config.js ├── netlify.toml ├── package.json ├── packages/ │ ├── cli/ │ │ ├── README.md │ │ ├── bin.mjs │ │ ├── package.json │ │ ├── src/ │ │ │ ├── cli.ts │ │ │ ├── code-to-ansi.ts │ │ │ ├── colors.ts │ │ │ └── index.ts │ │ ├── test/ │ │ │ └── cli.test.ts │ │ └── tsdown.config.ts │ ├── codegen/ │ │ ├── README.md │ │ ├── bin.mjs │ │ ├── package.json │ │ ├── src/ │ │ │ ├── cli.ts │ │ │ └── index.ts │ │ ├── test/ │ │ │ ├── __snapshots__/ │ │ │ │ ├── basic-oniguruma-js.js │ │ │ │ ├── basic-oniguruma.ts │ │ │ │ └── basic-precompiled.ts │ │ │ └── codegen.test.ts │ │ └── tsdown.config.ts │ ├── colorized-brackets/ │ │ ├── README.md │ │ ├── package.json │ │ ├── scripts/ │ │ │ └── prepare.ts │ │ ├── src/ │ │ │ ├── colorizeBracketTokens.ts │ │ │ ├── index.ts │ │ │ ├── splitBracketTokens.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── test/ │ │ │ ├── bracket-customization.test.ts │ │ │ ├── dual-themes.test.ts │ │ │ ├── explicit-trigger.test.ts │ │ │ ├── fixtures/ │ │ │ │ ├── csharp/ │ │ │ │ │ └── generic.cs │ │ │ │ ├── css/ │ │ │ │ │ └── basic.css │ │ │ │ ├── html/ │ │ │ │ │ ├── basic.html │ │ │ │ │ └── embedded.html │ │ │ │ ├── java/ │ │ │ │ │ └── generic.java │ │ │ │ ├── jinja/ │ │ │ │ │ └── basic.jinja │ │ │ │ ├── liquid/ │ │ │ │ │ └── basic.liquid │ │ │ │ ├── python/ │ │ │ │ │ └── basic.py │ │ │ │ ├── rust/ │ │ │ │ │ ├── generic.rs │ │ │ │ │ └── turbofish.rs │ │ │ │ ├── svelte/ │ │ │ │ │ └── embedded.svelte │ │ │ │ ├── ts/ │ │ │ │ │ ├── angle-brackets.ts │ │ │ │ │ ├── comments.ts │ │ │ │ │ ├── generic.ts │ │ │ │ │ ├── jsdoc.ts │ │ │ │ │ ├── strings.ts │ │ │ │ │ ├── template.ts │ │ │ │ │ └── unexpected.txt │ │ │ │ └── tsx/ │ │ │ │ └── basic.tsx │ │ │ ├── fixtures.test.ts │ │ │ └── utils.ts │ │ └── tsdown.config.ts │ ├── core/ │ │ ├── README.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── constructors/ │ │ │ │ ├── bundle-factory.ts │ │ │ │ └── highlighter.ts │ │ │ ├── highlight/ │ │ │ │ ├── _get-transformers.ts │ │ │ │ ├── code-to-hast.ts │ │ │ │ ├── code-to-html.ts │ │ │ │ ├── code-to-tokens-ansi.test.ts │ │ │ │ ├── code-to-tokens-ansi.ts │ │ │ │ ├── code-to-tokens-base.ts │ │ │ │ └── code-to-tokens.ts │ │ │ ├── index.ts │ │ │ ├── textmate.ts │ │ │ ├── theme-css-variables.ts │ │ │ ├── transformer-decorations.ts │ │ │ ├── types.ts │ │ │ └── utils/ │ │ │ ├── constants.ts │ │ │ ├── hast.ts │ │ │ ├── index.ts │ │ │ ├── strings.test.ts │ │ │ ├── strings.ts │ │ │ └── tokens.ts │ │ ├── test/ │ │ │ ├── __snapshots__/ │ │ │ │ └── tokens.test.ts.snap │ │ │ ├── core-sync.test.ts │ │ │ ├── core.test.ts │ │ │ ├── css-variables.test.ts │ │ │ ├── get-singleton.test.ts │ │ │ ├── tokens.test.ts │ │ │ └── transformers.test.ts │ │ └── tsdown.config.ts │ ├── engine-javascript/ │ │ ├── README.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── engine-compile.ts │ │ │ ├── engine-raw.ts │ │ │ ├── index.ts │ │ │ └── scanner.ts │ │ ├── test/ │ │ │ ├── __records__/ │ │ │ │ ├── beancount.js.json │ │ │ │ ├── beancount.wasm.json │ │ │ │ ├── html-basic.js.json │ │ │ │ ├── html-basic.wasm.json │ │ │ │ ├── json-basic.js.json │ │ │ │ ├── json-basic.wasm.json │ │ │ │ ├── jsonc.js.json │ │ │ │ ├── jsonc.wasm.json │ │ │ │ ├── markdown.js.json │ │ │ │ ├── markdown.wasm.json │ │ │ │ ├── sql.js.json │ │ │ │ ├── sql.wasm.json │ │ │ │ ├── toml.js.json │ │ │ │ ├── toml.wasm.json │ │ │ │ ├── ts-basic.js.json │ │ │ │ ├── ts-basic.wasm.json │ │ │ │ ├── vue.js.json │ │ │ │ └── vue.wasm.json │ │ │ ├── compare.test.ts │ │ │ ├── general.test.ts │ │ │ ├── out/ │ │ │ │ └── monokai-underline.html │ │ │ ├── raw.test.ts │ │ │ ├── types.ts │ │ │ └── verify.test.ts │ │ └── tsdown.config.ts │ ├── engine-oniguruma/ │ │ ├── README.md │ │ ├── package.json │ │ ├── rollup.config.mjs │ │ ├── src/ │ │ │ ├── index.ts │ │ │ ├── oniguruma/ │ │ │ │ ├── LICENSE │ │ │ │ ├── index.ts │ │ │ │ └── onig.ts │ │ │ └── wasm-inlined.ts │ │ └── test/ │ │ ├── wasm1.test.ts │ │ ├── wasm2.test.ts │ │ ├── wasm3.test.ts │ │ ├── wasm4.test.ts │ │ ├── wasm5.test.ts │ │ └── wasm6.test.ts │ ├── langs/ │ │ ├── README.md │ │ ├── package.json │ │ └── scripts/ │ │ ├── langs.ts │ │ └── prepare.ts │ ├── langs-precompiled/ │ │ ├── README.md │ │ ├── package.json │ │ ├── scripts/ │ │ │ ├── langs.ts │ │ │ ├── precompile.ts │ │ │ └── prepare.ts │ │ └── tests/ │ │ ├── __snapshots__/ │ │ │ ├── precompile-run.test.ts.snap │ │ │ └── precompile-serialize.test.ts.snap │ │ ├── precompile-run.test.ts │ │ └── precompile-serialize.test.ts │ ├── markdown-exit/ │ │ ├── README.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── common.ts │ │ │ ├── core.ts │ │ │ └── index.ts │ │ ├── test/ │ │ │ ├── async.test.ts │ │ │ ├── fixtures/ │ │ │ │ ├── a.async.out.html │ │ │ │ ├── a.md │ │ │ │ ├── a.out.html │ │ │ │ ├── b.md │ │ │ │ ├── b.out.html │ │ │ │ ├── c.md │ │ │ │ └── c.out.html │ │ │ └── index.test.ts │ │ └── tsdown.config.ts │ ├── markdown-it/ │ │ ├── README.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── async.ts │ │ │ ├── common.ts │ │ │ ├── core.ts │ │ │ └── index.ts │ │ ├── test/ │ │ │ ├── async.test.ts │ │ │ ├── fixtures/ │ │ │ │ ├── a.async.out.html │ │ │ │ ├── a.md │ │ │ │ ├── a.out.html │ │ │ │ ├── b.md │ │ │ │ ├── b.out.html │ │ │ │ ├── c.md │ │ │ │ ├── c.out.html │ │ │ │ ├── lang-alias.md │ │ │ │ └── lang-alias.out.html │ │ │ └── index.test.ts │ │ └── tsdown.config.ts │ ├── monaco/ │ │ ├── README.md │ │ ├── package.json │ │ ├── playground/ │ │ │ ├── index.html │ │ │ ├── package.json │ │ │ ├── src/ │ │ │ │ └── main.ts │ │ │ └── vite.config.ts │ │ ├── src/ │ │ │ ├── index.ts │ │ │ ├── tokenizer.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── test/ │ │ │ └── repro.test.ts │ │ └── tsdown.config.ts │ ├── primitive/ │ │ ├── package.json │ │ ├── src/ │ │ │ ├── constructors/ │ │ │ │ ├── async.ts │ │ │ │ └── primitive.ts │ │ │ ├── highlight/ │ │ │ │ ├── code-to-tokens-base.ts │ │ │ │ └── code-to-tokens-themes.ts │ │ │ ├── index.ts │ │ │ ├── textmate/ │ │ │ │ ├── getters-resolve.ts │ │ │ │ ├── grammar-state.ts │ │ │ │ ├── normalize-theme.ts │ │ │ │ ├── registry.ts │ │ │ │ └── resolver.ts │ │ │ ├── textmate.ts │ │ │ ├── types.ts │ │ │ └── utils/ │ │ │ ├── alias.ts │ │ │ ├── colors.test.ts │ │ │ ├── colors.ts │ │ │ ├── general.ts │ │ │ ├── index.ts │ │ │ └── strings.ts │ │ ├── test/ │ │ │ ├── registry.test.ts │ │ │ └── tokenizer.test.ts │ │ └── tsdown.config.ts │ ├── rehype/ │ │ ├── README.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── core.ts │ │ │ ├── handlers.ts │ │ │ ├── index.ts │ │ │ └── types.ts │ │ ├── test/ │ │ │ ├── core.test.ts │ │ │ ├── fixtures/ │ │ │ │ ├── a.core.out.html │ │ │ │ ├── a.md │ │ │ │ ├── a.out.html │ │ │ │ ├── b.md │ │ │ │ ├── b.out.html │ │ │ │ ├── c.md │ │ │ │ ├── c.out.html │ │ │ │ ├── d.md │ │ │ │ ├── d.out.html │ │ │ │ ├── inline.md │ │ │ │ ├── inline.out.html │ │ │ │ ├── lang-alias.md │ │ │ │ └── lang-alias.out.html │ │ │ └── index.test.ts │ │ └── tsdown.config.ts │ ├── shiki/ │ │ ├── NOTICE │ │ ├── README.md │ │ ├── package.json │ │ ├── scripts/ │ │ │ └── prepare.ts │ │ ├── src/ │ │ │ ├── bundle-full.ts │ │ │ ├── bundle-web.ts │ │ │ ├── core-unwasm.ts │ │ │ ├── core.ts │ │ │ ├── engine-javascript.ts │ │ │ ├── engine-oniguruma.ts │ │ │ ├── index.ts │ │ │ ├── langs-bundle-full.ts │ │ │ ├── langs-bundle-web.ts │ │ │ ├── langs.ts │ │ │ ├── textmate.ts │ │ │ ├── themes.ts │ │ │ ├── types.ts │ │ │ └── wasm.ts │ │ ├── test/ │ │ │ ├── alias.test.ts │ │ │ ├── ansi.test.ts │ │ │ ├── astro.test.ts │ │ │ ├── bundle.test.ts │ │ │ ├── cf.ts │ │ │ ├── color-replacement.test.ts │ │ │ ├── css-variables.test.ts │ │ │ ├── decorations.test.ts │ │ │ ├── dist.test.ts │ │ │ ├── general.test.ts │ │ │ ├── get-highlighter.test.ts │ │ │ ├── grammar-state.test.ts │ │ │ ├── hast.test.ts │ │ │ ├── injections.test.ts │ │ │ ├── out/ │ │ │ │ ├── ansi-background.html │ │ │ │ ├── ansi-dark-plus.html │ │ │ │ ├── ansi-multi-themes.html │ │ │ │ ├── ansi.html │ │ │ │ ├── decorations/ │ │ │ │ │ ├── adjacent.html │ │ │ │ │ ├── basic.html │ │ │ │ │ ├── inline-multiline.html │ │ │ │ │ └── inline.html │ │ │ │ ├── dual-themes.html │ │ │ │ ├── injections-side-effects-angular-after.html │ │ │ │ ├── injections-side-effects-angular-before.html │ │ │ │ ├── injections-side-effects-angular-ts-after.html │ │ │ │ ├── injections-side-effects-angular-ts-before.html │ │ │ │ ├── injections-side-effects-vue-after.html │ │ │ │ ├── injections-side-effects-vue-before.html │ │ │ │ ├── monokai-underline.html │ │ │ │ ├── multiple-themes-no-default.html │ │ │ │ ├── multiple-themes.html │ │ │ │ ├── shorthand-markdown1.html │ │ │ │ ├── shorthand-markdown2.html │ │ │ │ └── vue-injections.html │ │ │ ├── shorthands-markdown.test.ts │ │ │ ├── shorthands.test.ts │ │ │ ├── theme-none.test.ts │ │ │ └── themes.test.ts │ │ └── tsdown.config.ts │ ├── themes/ │ │ ├── README.md │ │ ├── package.json │ │ └── scripts/ │ │ ├── prepare.ts │ │ └── themes.ts │ ├── transformers/ │ │ ├── README.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── index.ts │ │ │ ├── shared/ │ │ │ │ ├── highlight-word.ts │ │ │ │ ├── notation-transformer.ts │ │ │ │ ├── parse-comments.ts │ │ │ │ └── utils.ts │ │ │ └── transformers/ │ │ │ ├── compact-line-options.ts │ │ │ ├── meta-highlight-word.ts │ │ │ ├── meta-highlight.ts │ │ │ ├── notation-diff.ts │ │ │ ├── notation-error-level.ts │ │ │ ├── notation-focus.ts │ │ │ ├── notation-highlight-word.ts │ │ │ ├── notation-highlight.ts │ │ │ ├── notation-map.ts │ │ │ ├── remove-comments.ts │ │ │ ├── remove-line-breaks.ts │ │ │ ├── remove-notation-escape.ts │ │ │ ├── render-indent-guides.ts │ │ │ ├── render-whitespace.ts │ │ │ └── style-to-class.ts │ │ ├── test/ │ │ │ ├── __snapshots__/ │ │ │ │ └── transformer-meta-highlight-zeroIndexed.test.ts.snap │ │ │ ├── class-active-code.test.ts │ │ │ ├── fixtures/ │ │ │ │ ├── all/ │ │ │ │ │ ├── a.js │ │ │ │ │ └── a.js.output.html │ │ │ │ ├── diff/ │ │ │ │ │ ├── a.js │ │ │ │ │ └── a.js.output.html │ │ │ │ ├── error-level/ │ │ │ │ │ ├── a.js │ │ │ │ │ └── a.js.output.html │ │ │ │ ├── focus/ │ │ │ │ │ ├── a.js │ │ │ │ │ ├── a.js.output.html │ │ │ │ │ ├── empty-line-comment.js │ │ │ │ │ ├── empty-line-comment.js.output.html │ │ │ │ │ ├── mutliple-lines.js │ │ │ │ │ └── mutliple-lines.js.output.html │ │ │ │ ├── highlight/ │ │ │ │ │ ├── a.js │ │ │ │ │ ├── a.js.output.html │ │ │ │ │ ├── comment-highlight.js │ │ │ │ │ ├── comment-highlight.js.output.html │ │ │ │ │ ├── empty-line-comment-leading.js │ │ │ │ │ ├── empty-line-comment-leading.js.output.html │ │ │ │ │ ├── empty-line-comment.js │ │ │ │ │ ├── empty-line-comment.js.output.html │ │ │ │ │ ├── mutliple-lines.js │ │ │ │ │ ├── mutliple-lines.js.output.html │ │ │ │ │ ├── query.sql │ │ │ │ │ └── query.sql.output.html │ │ │ │ ├── highlight-word/ │ │ │ │ │ ├── basic.js │ │ │ │ │ ├── basic.js.output.html │ │ │ │ │ ├── complex.js │ │ │ │ │ ├── complex.js.output.html │ │ │ │ │ ├── mutliple-words.js │ │ │ │ │ ├── mutliple-words.js.output.html │ │ │ │ │ ├── occurrence.js │ │ │ │ │ └── occurrence.js.output.html │ │ │ │ ├── match-algorithm/ │ │ │ │ │ ├── v1.js │ │ │ │ │ ├── v1.js.output.html │ │ │ │ │ ├── v3.js │ │ │ │ │ └── v3.js.output.html │ │ │ │ ├── remove-comments/ │ │ │ │ │ ├── basic.js │ │ │ │ │ └── basic.js.output.html │ │ │ │ ├── remove-notation-escape/ │ │ │ │ │ ├── basic.js │ │ │ │ │ ├── basic.js.output.html │ │ │ │ │ ├── markdown.md │ │ │ │ │ ├── markdown.md.output.html │ │ │ │ │ ├── multiple-escapes.js │ │ │ │ │ └── multiple-escapes.js.output.html │ │ │ │ └── whitespace/ │ │ │ │ ├── a.js │ │ │ │ ├── a.js.all.output.html │ │ │ │ ├── a.js.boundary.output.html │ │ │ │ ├── a.js.leading.output.html │ │ │ │ ├── a.js.trailing.output.html │ │ │ │ ├── b.js │ │ │ │ ├── b.js.all.output.html │ │ │ │ ├── b.js.boundary.output.html │ │ │ │ ├── b.js.leading.output.html │ │ │ │ ├── b.js.trailing.output.html │ │ │ │ ├── c.js │ │ │ │ ├── c.js.all.output.html │ │ │ │ ├── c.js.boundary.output.html │ │ │ │ ├── c.js.leading.output.html │ │ │ │ └── c.js.trailing.output.html │ │ │ ├── fixtures.test.ts │ │ │ ├── meta-line-highlight.test.ts │ │ │ ├── meta-word-highlight.test.ts │ │ │ ├── notation-diff-rose-pine.test.ts │ │ │ ├── parse-comments-multi-token.test.ts │ │ │ ├── style-to-class.test.ts │ │ │ ├── transformer-meta-highlight-zeroIndexed.test.ts │ │ │ ├── utils.test.ts │ │ │ └── whitespace-inline.test.ts │ │ └── tsdown.config.ts │ ├── twoslash/ │ │ ├── README.md │ │ ├── package.json │ │ ├── scripts/ │ │ │ └── icons.ts │ │ ├── src/ │ │ │ ├── core.ts │ │ │ ├── error.ts │ │ │ ├── icons-completions.json │ │ │ ├── icons-tags.json │ │ │ ├── icons.ts │ │ │ ├── includes.ts │ │ │ ├── index.ts │ │ │ ├── renderer-classic.ts │ │ │ ├── renderer-rich.ts │ │ │ └── types.ts │ │ ├── style-classic.css │ │ ├── style-rich.css │ │ ├── test/ │ │ │ ├── classic.test.ts │ │ │ ├── fixtures/ │ │ │ │ ├── completion-end-multifile-2.ts │ │ │ │ ├── completion-end-multifile.ts │ │ │ │ ├── completion-end.ts │ │ │ │ ├── completion-string.ts │ │ │ │ ├── highlights.ts │ │ │ │ ├── import-vue.ts │ │ │ │ └── query-offset.ts │ │ │ ├── fixtures.test.ts │ │ │ ├── includes.test.ts │ │ │ ├── markdown-it.test.ts │ │ │ ├── out/ │ │ │ │ ├── classic/ │ │ │ │ │ ├── compiler_errors.html │ │ │ │ │ ├── completions.html │ │ │ │ │ ├── console_log.html │ │ │ │ │ ├── cuts_out_unnecessary_code.html │ │ │ │ │ └── simple.html │ │ │ │ ├── completion-end-multifile-2.ts.html │ │ │ │ ├── completion-end-multifile-2.ts.json │ │ │ │ ├── completion-end-multifile.ts.html │ │ │ │ ├── completion-end-multifile.ts.json │ │ │ │ ├── completion-end.ts.html │ │ │ │ ├── completion-end.ts.json │ │ │ │ ├── completion-string.ts.html │ │ │ │ ├── completion-string.ts.json │ │ │ │ ├── error-multi-tokens.html │ │ │ │ ├── fixtures/ │ │ │ │ │ ├── completion-end-multifile-2.ts.html │ │ │ │ │ ├── completion-end-multifile-2.ts.json │ │ │ │ │ ├── completion-end-multifile.ts.html │ │ │ │ │ ├── completion-end-multifile.ts.json │ │ │ │ │ ├── completion-end.ts.html │ │ │ │ │ ├── completion-end.ts.json │ │ │ │ │ ├── highlights.ts.html │ │ │ │ │ ├── highlights.ts.json │ │ │ │ │ ├── import-vue.ts.html │ │ │ │ │ ├── import-vue.ts.json │ │ │ │ │ ├── query-offset.ts.html │ │ │ │ │ └── query-offset.ts.json │ │ │ │ ├── highlights.ts.html │ │ │ │ ├── highlights.ts.json │ │ │ │ ├── import-vue.ts.html │ │ │ │ ├── import-vue.ts.json │ │ │ │ ├── includes/ │ │ │ │ │ ├── main.html │ │ │ │ │ ├── nested_includes-a.html │ │ │ │ │ ├── nested_includes-b.html │ │ │ │ │ ├── nested_includes-c.html │ │ │ │ │ └── replaced_directives.html │ │ │ │ ├── markdown-it/ │ │ │ │ │ ├── highlight-disable-triggers.html │ │ │ │ │ ├── highlight-lines.html │ │ │ │ │ └── works.html │ │ │ │ ├── query-offset.ts.html │ │ │ │ ├── query-offset.ts.json │ │ │ │ └── rich/ │ │ │ │ ├── custom-tags.html │ │ │ │ ├── line-query.html │ │ │ │ ├── no-icons.html │ │ │ │ ├── rich-error-hover.html │ │ │ │ ├── rich-none-theme.html │ │ │ │ └── rich.html │ │ │ ├── rich.test.ts │ │ │ ├── target-multi-tokens.test.ts │ │ │ ├── token-split.test.ts │ │ │ └── types-cache.test.ts │ │ └── tsdown.config.ts │ ├── types/ │ │ ├── README.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── bundle-factory.ts │ │ │ ├── decorations.ts │ │ │ ├── engines.ts │ │ │ ├── error.ts │ │ │ ├── highlighter.ts │ │ │ ├── index.ts │ │ │ ├── langs.ts │ │ │ ├── options.ts │ │ │ ├── textmate.ts │ │ │ ├── themes.ts │ │ │ ├── tokens.ts │ │ │ ├── transformers.ts │ │ │ └── utils.ts │ │ └── tsdown.config.ts │ └── vitepress-twoslash/ │ ├── .gitignore │ ├── README.md │ ├── package.json │ ├── src/ │ │ ├── cache-fs.ts │ │ ├── cache-inline/ │ │ │ ├── cache-inline.ts │ │ │ ├── env.ts │ │ │ ├── file-patcher.ts │ │ │ ├── index.ts │ │ │ ├── markdown-fence.ts │ │ │ └── markdown-it-mapper.ts │ │ ├── client.ts │ │ ├── index.ts │ │ ├── renderer-floating-vue.ts │ │ ├── style.css │ │ └── types.ts │ ├── test/ │ │ ├── fixtures.test.ts │ │ └── out/ │ │ ├── completion-end-multifile-2.ts.html │ │ ├── completion-end-multifile-2.ts.json │ │ ├── completion-end-multifile.ts.html │ │ ├── completion-end-multifile.ts.json │ │ ├── completion-end.ts.html │ │ ├── completion-end.ts.json │ │ ├── completion-string.ts.json │ │ ├── highlights.ts.html │ │ ├── highlights.ts.json │ │ ├── import-vue.ts.html │ │ ├── import-vue.ts.json │ │ ├── query-offset.ts.html │ │ └── query-offset.ts.json │ └── tsdown.config.ts ├── pnpm-workspace.yaml ├── scripts/ │ ├── report-engine-js-compat.ts │ └── utils.ts ├── taze.config.ts ├── test/ │ ├── exports/ │ │ ├── @shikijs/ │ │ │ ├── cli.yaml │ │ │ ├── colorized-brackets.yaml │ │ │ ├── core.yaml │ │ │ ├── engine-javascript.yaml │ │ │ ├── engine-oniguruma.yaml │ │ │ ├── markdown-exit.yaml │ │ │ ├── markdown-it.yaml │ │ │ ├── monaco.yaml │ │ │ ├── primitive.yaml │ │ │ ├── rehype.yaml │ │ │ ├── transformers.yaml │ │ │ ├── twoslash.yaml │ │ │ ├── types.yaml │ │ │ └── vitepress-twoslash.yaml │ │ ├── shiki-codegen.yaml │ │ └── shiki.yaml │ └── exports.test.ts ├── tsconfig.json └── vitest.config.ts