|
1 |
| -/** |
2 |
| - * @see https://vuepress.vuejs.org/zh/ |
3 |
| - */ |
| 1 | +const htmlModules = require('./config/htmlModules.js') |
| 2 | + |
4 | 3 | module.exports = {
|
5 | 4 | port: '4000',
|
6 |
| - dest: 'dist', |
7 |
| - base: '/db-tutorial/', |
| 5 | + dest: 'docs/.temp', |
| 6 | + base: '/db-tutorial/', // 默认'/'。如果你想将你的网站部署到如 https://foo.github.io/bar/,那么 base 应该被设置成 "/bar/",(否则页面将失去样式等文件) |
8 | 7 | title: 'DB-TUTORIAL',
|
9 |
| - description: '数据库教程', |
10 |
| - head: [['link', { rel: 'icon', href: `/favicon.ico` }]], |
| 8 | + description: '☕ db-tutorial 是一个数据库教程。', |
| 9 | + theme: 'vdoing', // 使用依赖包主题 |
| 10 | + // theme: require.resolve('../../vdoing'), // 使用本地主题 |
| 11 | + head: [ |
| 12 | + // 注入到页面<head> 中的标签,格式[tagName, { attrName: attrValue }, innerHTML?] |
| 13 | + ['link', { rel: 'icon', href: '/img/favicon.ico' }], //favicons,资源放在public文件夹 |
| 14 | + ['meta', { name: 'keywords', content: 'vuepress,theme,blog,vdoing' }], |
| 15 | + ['meta', { name: 'theme-color', content: '#11a8cd' }], // 移动浏览器主题颜色 |
| 16 | + ], |
11 | 17 | markdown: {
|
| 18 | + // lineNumbers: true, |
| 19 | + extractHeaders: ['h2', 'h3', 'h4', 'h5', 'h6'], // 提取标题到侧边栏的级别,默认['h2', 'h3'] |
12 | 20 | externalLinks: {
|
13 | 21 | target: '_blank',
|
14 | 22 | rel: 'noopener noreferrer',
|
15 | 23 | },
|
16 | 24 | },
|
| 25 | + // 主题配置 |
17 | 26 | themeConfig: {
|
18 |
| - logo: 'https://raw.githubusercontent.com/dunwu/images/dev/common/dunwu-logo-200.png', |
19 |
| - repo: 'dunwu/db-tutorial', |
20 |
| - repoLabel: 'Github', |
21 |
| - docsDir: 'docs', |
22 |
| - docsBranch: 'master', |
23 |
| - editLinks: true, |
24 |
| - smoothScroll: true, |
25 |
| - locales: { |
26 |
| - '/': { |
27 |
| - label: '简体中文', |
28 |
| - selectText: 'Languages', |
29 |
| - editLinkText: '帮助我们改善此页面!', |
30 |
| - lastUpdated: '上次更新', |
31 |
| - nav: [ |
32 |
| - { |
33 |
| - text: 'SQL', |
34 |
| - link: '/sql/', |
35 |
| - }, |
36 |
| - { |
37 |
| - text: 'NOSQL', |
38 |
| - link: '/nosql/', |
39 |
| - }, |
40 |
| - { |
41 |
| - text: 'Mysql', |
42 |
| - link: '/sql/mysql/', |
43 |
| - }, |
44 |
| - { |
45 |
| - text: 'Redis', |
46 |
| - link: '/nosql/redis/', |
47 |
| - }, |
48 |
| - { |
49 |
| - text: 'Elasticsearch', |
50 |
| - link: '/nosql/elasticsearch/', |
51 |
| - }, |
52 |
| - { |
53 |
| - text: 'MongoDB', |
54 |
| - link: '/nosql/mongodb/', |
55 |
| - }, |
56 |
| - { |
57 |
| - text: '🎯 博客', |
58 |
| - link: 'https://github.com/dunwu/blog', |
59 |
| - target: '_blank', |
60 |
| - rel: '', |
61 |
| - }, |
| 27 | + nav: [ |
| 28 | + { text: '数据库综合', link: '/01.数据库综合/' }, |
| 29 | + { text: '数据库中间件', link: '/02.数据库中间件/' }, |
| 30 | + { |
| 31 | + text: '关系型数据库', |
| 32 | + link: '/03.关系型数据库/', |
| 33 | + items: [ |
| 34 | + { text: '综合', link: '/03.关系型数据库/01.综合/' }, |
| 35 | + { text: 'Mysql', link: '/03.关系型数据库/02.Mysql/' }, |
| 36 | + { text: '其他', link: '/03.关系型数据库/99.其他/' }, |
| 37 | + ], |
| 38 | + }, |
| 39 | + { |
| 40 | + text: '文档数据库', |
| 41 | + items: [{ text: 'MongoDB', link: '/04.文档数据库/01.MongoDB/' }], |
| 42 | + }, |
| 43 | + { |
| 44 | + text: 'KV数据库', |
| 45 | + items: [{ text: 'Redis', link: '/05.KV数据库/01.Redis/' }], |
| 46 | + }, |
| 47 | + { |
| 48 | + text: '搜索引擎数据库', |
| 49 | + items: [ |
| 50 | + { text: 'Elasticsearch', link: '/07.搜索引擎数据库/01.Elasticsearch/' }, |
| 51 | + { text: 'Elastic技术栈', link: '/07.搜索引擎数据库/02.Elastic/' }, |
62 | 52 | ],
|
63 |
| - sidebar: 'auto', |
64 |
| - sidebarDepth: 2, |
65 | 53 | },
|
| 54 | + ], |
| 55 | + sidebarDepth: 2, // 侧边栏显示深度,默认1,最大2(显示到h3标题) |
| 56 | + logo: 'https://raw.githubusercontent.com/dunwu/images/dev/common/dunwu-logo-200.png', // 导航栏logo |
| 57 | + repo: 'dunwu/db-tutorial', // 导航栏右侧生成Github链接 |
| 58 | + searchMaxSuggestions: 10, // 搜索结果显示最大数 |
| 59 | + lastUpdated: '上次更新', // 更新的时间,及前缀文字 string | boolean (取值为git提交时间) |
| 60 | + |
| 61 | + docsDir: 'docs', // 编辑的文件夹 |
| 62 | + editLinks: true, // 编辑链接 |
| 63 | + editLinkText: '📝 帮助改善此页面!', |
| 64 | + |
| 65 | + // 以下配置是Vdoing主题改动的和新增的配置 |
| 66 | + sidebar: { mode: 'structuring', collapsable: false }, // 侧边栏 'structuring' | { mode: 'structuring', collapsable: Boolean} | 'auto' | 自定义 温馨提示:目录页数据依赖于结构化的侧边栏数据,如果你不设置为'structuring',将无法使用目录页 |
| 67 | + |
| 68 | + // sidebarOpen: false, // 初始状态是否打开侧边栏,默认true |
| 69 | + updateBar: { |
| 70 | + // 最近更新栏 |
| 71 | + showToArticle: true, // 显示到文章页底部,默认true |
| 72 | + // moreArticle: '/archives' // “更多文章”跳转的页面,默认'/archives' |
66 | 73 | },
|
| 74 | + // titleBadge: false, // 文章标题前的图标是否显示,默认true |
| 75 | + // titleBadgeIcons: [ // 文章标题前图标的地址,默认主题内置图标 |
| 76 | + // '图标地址1', |
| 77 | + // '图标地址2' |
| 78 | + // ], |
| 79 | + // bodyBgImg: [ |
| 80 | + // 'https://cdn.jsdelivr.net/gh/xugaoyi/image_store/blog/20200507175828.jpeg', |
| 81 | + // 'https://cdn.jsdelivr.net/gh/xugaoyi/image_store/blog/20200507175845.jpeg', |
| 82 | + // 'https://cdn.jsdelivr.net/gh/xugaoyi/image_store/blog/20200507175846.jpeg' |
| 83 | + // ], // body背景大图,默认无。 单张图片 String || 多张图片 Array, 多张图片时每隔15秒换一张。 |
| 84 | + |
| 85 | + // categoryText: '随笔', // 碎片化文章(_posts文件夹的文章)预设生成的分类值,默认'随笔' |
| 86 | + |
| 87 | + // contentBgStyle: 1, |
| 88 | + |
| 89 | + category: false, // 是否打开分类功能,默认true。 如打开,会做的事情有:1. 自动生成的frontmatter包含分类字段 2.页面中显示与分类相关的信息和模块 3.自动生成分类页面(在@pages文件夹)。如关闭,则反之。 |
| 90 | + tag: false, // 是否打开标签功能,默认true。 如打开,会做的事情有:1. 自动生成的frontmatter包含标签字段 2.页面中显示与标签相关的信息和模块 3.自动生成标签页面(在@pages文件夹)。如关闭,则反之。 |
| 91 | + archive: true, // 是否打开归档功能,默认true。 如打开,会做的事情有:1.自动生成归档页面(在@pages文件夹)。如关闭,则反之。 |
| 92 | + |
| 93 | + author: { |
| 94 | + // 文章默认的作者信息,可在md文件中单独配置此信息 String | {name: String, href: String} |
| 95 | + name: 'dunwu', // 必需 |
| 96 | + href: 'https://github.com/dunwu', // 可选的 |
| 97 | + }, |
| 98 | + social: { |
| 99 | + // 社交图标,显示于博主信息栏和页脚栏 |
| 100 | + // iconfontCssFile: '//at.alicdn.com/t/font_1678482_u4nrnp8xp6g.css', // 可选,阿里图标库在线css文件地址,对于主题没有的图标可自由添加 |
| 101 | + icons: [ |
| 102 | + { |
| 103 | + iconClass: 'icon-youjian', |
| 104 | + title: '发邮件', |
| 105 | + link: 'mailto:forbreak@163.com', |
| 106 | + }, |
| 107 | + { |
| 108 | + iconClass: 'icon-github', |
| 109 | + title: 'GitHub', |
| 110 | + link: 'https://github.com/dunwu', |
| 111 | + }, |
| 112 | + ], |
| 113 | + }, |
| 114 | + footer: { |
| 115 | + // 页脚信息 |
| 116 | + createYear: 2019, // 博客创建年份 |
| 117 | + copyrightInfo: '钝悟(dunwu) | CC-BY-SA-4.0', // 博客版权信息,支持a标签 |
| 118 | + }, |
| 119 | + htmlModules, |
67 | 120 | },
|
| 121 | + |
| 122 | + // 插件 |
68 | 123 | plugins: [
|
69 | 124 | [
|
70 |
| - '@vuepress/active-header-links', |
| 125 | + require('./plugins/love-me'), |
71 | 126 | {
|
72 |
| - sidebarLinkSelector: '.sidebar-link', |
73 |
| - headerAnchorSelector: '.header-anchor', |
| 127 | + // 鼠标点击爱心特效 |
| 128 | + color: '#11a8cd', // 爱心颜色,默认随机色 |
| 129 | + excludeClassName: 'theme-vdoing-content', // 要排除元素的class, 默认空'' |
74 | 130 | },
|
75 | 131 | ],
|
76 |
| - ['@vuepress/back-to-top', true], |
| 132 | + |
| 133 | + ['fulltext-search'], // 全文搜索 |
| 134 | + |
| 135 | + // ['thirdparty-search', { // 可以添加第三方搜索链接的搜索框(原官方搜索框的参数仍可用) |
| 136 | + // thirdparty: [ // 可选,默认 [] |
| 137 | + // { |
| 138 | + // title: '在GitHub中搜索', |
| 139 | + // frontUrl: 'https://github.com/search?q=', // 搜索链接的前面部分 |
| 140 | + // behindUrl: '' // 搜索链接的后面部分,可选,默认 '' |
| 141 | + // }, |
| 142 | + // { |
| 143 | + // title: '在npm中搜索', |
| 144 | + // frontUrl: 'https://www.npmjs.com/search?q=', |
| 145 | + // }, |
| 146 | + // { |
| 147 | + // title: '在Bing中搜索', |
| 148 | + // frontUrl: 'https://cn.bing.com/search?q=' |
| 149 | + // } |
| 150 | + // ] |
| 151 | + // }], |
| 152 | + |
77 | 153 | [
|
78 |
| - '@vuepress/pwa', |
| 154 | + 'one-click-copy', |
79 | 155 | {
|
80 |
| - serviceWorker: true, |
81 |
| - updatePopup: true, |
| 156 | + // 代码块复制按钮 |
| 157 | + copySelector: ['div[class*="language-"] pre', 'div[class*="aside-code"] aside'], // String or Array |
| 158 | + copyMessage: '复制成功', // default is 'Copy successfully and then paste it for use.' |
| 159 | + duration: 1000, // prompt message display time. |
| 160 | + showInMobile: false, // whether to display on the mobile side, default: false. |
82 | 161 | },
|
83 | 162 | ],
|
84 | 163 | [
|
85 |
| - '@vuepress/last-updated', |
| 164 | + 'demo-block', |
86 | 165 | {
|
87 |
| - transformer: (timestamp, lang) => { |
88 |
| - // 不要忘了安装 moment |
89 |
| - const moment = require('moment') |
90 |
| - moment.locale(lang) |
91 |
| - return moment(timestamp).fromNow() |
| 166 | + // demo演示模块 https://github.com/xiguaxigua/vuepress-plugin-demo-block |
| 167 | + settings: { |
| 168 | + // jsLib: ['http://xxx'], // 在线示例(jsfiddle, codepen)中的js依赖 |
| 169 | + // cssLib: ['http://xxx'], // 在线示例中的css依赖 |
| 170 | + // vue: 'https://cdn.jsdelivr.net/npm/vue/dist/vue.min.js', // 在线示例中的vue依赖 |
| 171 | + jsfiddle: false, // 是否显示 jsfiddle 链接 |
| 172 | + codepen: true, // 是否显示 codepen 链接 |
| 173 | + horizontal: false, // 是否展示为横向样式 |
92 | 174 | },
|
93 | 175 | },
|
94 | 176 | ],
|
95 |
| - ['@vuepress/medium-zoom', true], |
96 | 177 | [
|
97 |
| - 'container', |
| 178 | + 'vuepress-plugin-zooming', // 放大图片 |
98 | 179 | {
|
99 |
| - type: 'vue', |
100 |
| - before: '<pre class="vue-container"><code>', |
101 |
| - after: '</code></pre>', |
| 180 | + selector: '.theme-vdoing-content img:not(.no-zoom)', |
| 181 | + options: { |
| 182 | + bgColor: 'rgba(0,0,0,0.6)', |
| 183 | + }, |
102 | 184 | },
|
103 | 185 | ],
|
104 | 186 | [
|
105 |
| - 'container', |
| 187 | + '@vuepress/last-updated', // "上次更新"时间格式 |
106 | 188 | {
|
107 |
| - type: 'upgrade', |
108 |
| - before: (info) => `<UpgradePath title="${info}">`, |
109 |
| - after: '</UpgradePath>', |
| 189 | + transformer: (timestamp, lang) => { |
| 190 | + const dayjs = require('dayjs') // https://day.js.org/ |
| 191 | + return dayjs(timestamp).format('YYYY/MM/DD, HH:mm:ss') |
| 192 | + }, |
110 | 193 | },
|
111 | 194 | ],
|
112 |
| - ['flowchart'], |
113 | 195 | ],
|
| 196 | + |
| 197 | + // 监听文件变化并重新构建 |
| 198 | + extraWatchFiles: ['.vuepress/config.js', '.vuepress/config/htmlModules.js'], |
114 | 199 | }
|
0 commit comments