import Vditor from '../src/index' import '../src/assets/less/index.less' // new VConsole() let toolbar if (window.innerWidth < 768) { toolbar = [ 'emoji', 'headings', 'bold', 'italic', 'strike', 'link', '|', 'list', 'ordered-list', 'check', 'outdent', 'indent', '|', 'quote', 'line', 'code', 'inline-code', 'insert-before', 'insert-after', '|', 'upload', 'record', 'table', '|', 'undo', 'redo', '|', 'edit-mode', 'content-theme', 'code-theme', 'export', { name: 'more', toolbar: [ 'fullscreen', 'both', 'preview', 'info', 'help', ], }] } const initVditor = (language) => { window.vditor = new Vditor('vditor', { // _lutePath: `http://192.168.31.194:9090/lute.min.js?${new Date().getTime()}`, _lutePath: 'src/js/lute/lute.min.js', // cdn: 'http://localhost:9000', toolbar, lang: language, mode: 'wysiwyg', height: window.innerHeight + 100, outline: { enable: true, position: 'right', }, debugger: true, typewriterMode: true, placeholder: 'Hello, Vditor!', preview: { markdown: { toc: true, mark: true, footnotes: true, autoSpace: true, }, math: { engine: 'KaTeX', }, }, toolbarConfig: { pin: true, }, counter: { enable: true, type: 'text', }, hint: { emojiPath: 'https://unpkg.com/vditor@1.8.3/dist/images/emoji', emojiTail: '设置常用表情', emoji: { 'sd': '💔', 'j': 'https://unpkg.com/vditor@1.3.1/dist/images/emoji/j.png', }, parse: false, extend: [ { key: '@', hint: (key) => { console.log(key) if ('vanessa'.indexOf(key.toLocaleLowerCase()) > -1) { return [ { value: '@Vanessa', html: ' Vanessa', }] } return [] }, }, { key: '#', hint: (key) => { console.log(key) if ('vditor'.indexOf(key.toLocaleLowerCase()) > -1) { return [ { value: '#Vditor', html: '#Vditor ♏ 一款浏览器端的 Markdown 编辑器,支持所见即所得(富文本)、即时渲染(类似 Typora)和分屏预览模式。', }] } return [] }, }], }, tab: '\t', upload: { accept: 'image/*,.mp3, .wav, .rar', token: 'test', url: '/api/upload/editor', linkToImgUrl: '/api/upload/fetch', filename(name) { return name.replace(/[^(a-zA-Z0-9\u4e00-\u9fa5\.)]/g, '').replace(/[\?\\/:|<>\*\[\]\(\)\$%\{\}@~]/g, '').replace('/\\s/g', '') }, }, }) } initVditor('zh_CN') window.setLang = (language) => { window.vditor.destroy() initVditor(language) }