Skip to content

Commit 7e765a6

Browse files
authored
feat: enhance code block & code group (#2594)
1 parent 3b5fe1f commit 7e765a6

File tree

15 files changed

+349
-180
lines changed

15 files changed

+349
-180
lines changed

.vitepress/config.ts

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,11 @@ import fs from 'fs'
22
import path from 'path'
33
import { defineConfigWithTheme, type HeadConfig } from 'vitepress'
44
import type { Config as ThemeConfig } from '@vue/theme'
5+
56
import baseConfig from '@vue/theme/config'
67
import { headerPlugin } from './headerMdPlugin'
78
// import { textAdPlugin } from './textAdMdPlugin'
9+
import { groupIconMdPlugin,groupIconVitePlugin } from 'vitepress-plugin-group-icons'
810

911
const nav: ThemeConfig['nav'] = [
1012
{
@@ -790,6 +792,7 @@ export default defineConfigWithTheme<ThemeConfig>({
790792
theme: 'github-dark',
791793
config(md) {
792794
md.use(headerPlugin)
795+
.use(groupIconMdPlugin)
793796
// .use(textAdPlugin)
794797
}
795798
},
@@ -818,6 +821,14 @@ export default defineConfigWithTheme<ThemeConfig>({
818821
},
819822
json: {
820823
stringify: true
821-
}
824+
},
825+
plugins: [
826+
groupIconVitePlugin({
827+
customIcon: {
828+
cypress: 'vscode-icons:file-type-cypress',
829+
'testing library': 'logos:testing-library'
830+
}
831+
}) as Plugin
832+
]
822833
}
823834
})

.vitepress/theme/index.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,9 @@ import ScrimbaLink from './components/ScrimbaLink.vue'
1414
// import Banner from './components/Banner.vue'
1515
// import TextAd from './components/TextAd.vue'
1616

17+
import 'vitepress/dist/client/theme-default/styles/components/vp-code-group.css'
18+
import 'virtual:group-icons.css'
19+
1720
export default Object.assign({}, VPTheme, {
1821
Layout: () => {
1922
// @ts-ignore

.vitepress/theme/styles/index.css

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,4 @@
44
@import "./inline-demo.css";
55
@import "./utilities.css";
66
@import "./style-guide.css";
7+
@import "./vars.css";

.vitepress/theme/styles/vars.css

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
:root {
2+
--vp-code-tab-active-bar-color: var(--vt-c-green);
3+
--vp-code-tab-active-text-color: var(--vt-c-text-inverse-1);
4+
--vp-code-tab-text-color: var(--vt-c-text-inverse-2);
5+
--vp-code-tab-hover-text-color: var(--vt-c-text-inverse-1);
6+
--vp-code-tab-bg: #292d3ef0;
7+
--vp-code-block-bg: #292d3ef0;
8+
}
9+
10+
.dark {
11+
--vp-code-tab-text-color: var(--vt-c-text-2);
12+
--vp-code-tab-hover-text-color: var(--vt-c-text-1);
13+
--vp-code-tab-active-text-color: var(--vt-c-text-1);
14+
--vp-code-tab-bg: var(--vt-c-black-mute);
15+
--vp-code-block-bg: var(--vt-c-black-mute);
16+
}

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
"textlint-filter-rule-comments": "^1.2.2",
3131
"textlint-rule-preset-vuejs-jp": "github:vuejs-jp/textlint-rule-preset-vuejs-jp",
3232
"typescript": "^5.6.3",
33+
"vitepress-plugin-group-icons": "^1.5.4",
3334
"vue-tsc": "^2.1.6"
3435
},
3536
"gitHooks": {

0 commit comments

Comments
 (0)