添加快捷键功能
This commit is contained in:
@@ -26,6 +26,7 @@ import { Export } from '@tiptap-pro/extension-export';
|
|||||||
import { Mathematics } from '@tiptap-pro/extension-mathematics';
|
import { Mathematics } from '@tiptap-pro/extension-mathematics';
|
||||||
import { TableOfContents, getHierarchicalIndexes } from '@tiptap-pro/extension-table-of-contents'
|
import { TableOfContents, getHierarchicalIndexes } from '@tiptap-pro/extension-table-of-contents'
|
||||||
|
|
||||||
|
import Audio from "../extensions/Audio.ts";
|
||||||
import BulletList from "../extensions/BulletList.ts";
|
import BulletList from "../extensions/BulletList.ts";
|
||||||
import FontSize from "../extensions/FontSize.ts";
|
import FontSize from "../extensions/FontSize.ts";
|
||||||
import Image from "../extensions/Image.ts";
|
import Image from "../extensions/Image.ts";
|
||||||
@@ -35,10 +36,11 @@ import NodeAlign from "../extensions/NodeAlign.ts";
|
|||||||
import OrderedList from "../extensions/OrderedList.ts";
|
import OrderedList from "../extensions/OrderedList.ts";
|
||||||
import SelectFile from "../extensions/SelectFile.ts";
|
import SelectFile from "../extensions/SelectFile.ts";
|
||||||
import Selection from "../extensions/Selection.ts";
|
import Selection from "../extensions/Selection.ts";
|
||||||
import Video from "../extensions/Video.ts";
|
import Shortcuts from "../extensions/Shortcuts.ts";
|
||||||
import Audio from "../extensions/Audio.ts";
|
|
||||||
import { uuid } from "../utils/UUID.ts";
|
|
||||||
import Toc from "../extensions/Toc.ts";
|
import Toc from "../extensions/Toc.ts";
|
||||||
|
import Video from "../extensions/Video.ts";
|
||||||
|
|
||||||
|
import { uuid } from "../utils/UUID.ts";
|
||||||
|
|
||||||
import { BubbleMenuPluginOptions, BubbleMenuPlugin } from "../components/menus/bubble/BubbleMenuPlugin.ts";
|
import { BubbleMenuPluginOptions, BubbleMenuPlugin } from "../components/menus/bubble/BubbleMenuPlugin.ts";
|
||||||
import { TextSelectionBubbleMenu } from "../components/menus/bubble/TextSelectionBubbleMenu.ts";
|
import { TextSelectionBubbleMenu } from "../components/menus/bubble/TextSelectionBubbleMenu.ts";
|
||||||
@@ -234,6 +236,7 @@ export const allExtensions = (uaiEditor: UAIEditor, _options: UAIEditorOptions):
|
|||||||
allowedMimeTypes: []
|
allowedMimeTypes: []
|
||||||
}),
|
}),
|
||||||
Selection,
|
Selection,
|
||||||
|
Shortcuts,
|
||||||
Subscript,
|
Subscript,
|
||||||
Superscript,
|
Superscript,
|
||||||
Table.configure({
|
Table.configure({
|
||||||
|
|||||||
@@ -0,0 +1,48 @@
|
|||||||
|
// Copyright (c) 2024-present AI-Labs
|
||||||
|
|
||||||
|
import { Extension } from '@tiptap/core';
|
||||||
|
import { Fullscreen } from '../components/menus/statusbar/Fullscreen';
|
||||||
|
import { InnerEditor } from '../core/UAIEditor';
|
||||||
|
import { Print } from '../components/menus/toolbar/base/Print';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 自定义快捷键
|
||||||
|
*/
|
||||||
|
export default Extension.create({
|
||||||
|
name: 'shortcuts',
|
||||||
|
|
||||||
|
addKeyboardShortcuts() {
|
||||||
|
return {
|
||||||
|
// 自定义快捷键
|
||||||
|
'F11': () => {
|
||||||
|
// 全屏
|
||||||
|
(document.querySelector("uai-editor-statusbar-menu-fullscreen") as Fullscreen).fullButton.click();
|
||||||
|
return true;
|
||||||
|
},
|
||||||
|
'Ctrl-p': () => {
|
||||||
|
// 打印
|
||||||
|
(document.querySelector("uai-editor-base-menu-print") as Print).click();
|
||||||
|
return true;
|
||||||
|
},
|
||||||
|
'Ctrl-=': () => {
|
||||||
|
const editor = (this.editor as InnerEditor).uaiEditor.editor;
|
||||||
|
const transform = editor.zoomableContent.style.transform;
|
||||||
|
const matrix = new WebKitCSSMatrix(transform);
|
||||||
|
editor.zoomableContent.style.transform = `scale(${matrix.a + 0.1})`;
|
||||||
|
return true;
|
||||||
|
},
|
||||||
|
'Ctrl--': () => {
|
||||||
|
const editor = (this.editor as InnerEditor).uaiEditor.editor;
|
||||||
|
const transform = editor.zoomableContent.style.transform;
|
||||||
|
const matrix = new WebKitCSSMatrix(transform);
|
||||||
|
editor.zoomableContent.style.transform = `scale(${matrix.a - 0.1})`;
|
||||||
|
return true;
|
||||||
|
},
|
||||||
|
'Ctrl-1': () => {
|
||||||
|
const editor = (this.editor as InnerEditor).uaiEditor.editor;
|
||||||
|
editor.zoomableContent.style.transform = `scale(1)`;
|
||||||
|
return true;
|
||||||
|
},
|
||||||
|
};
|
||||||
|
},
|
||||||
|
});
|
||||||
Reference in New Issue
Block a user