diff --git a/src/editor/core/event/CanvasEvent.ts b/src/editor/core/event/CanvasEvent.ts index 1949fb3..b51facc 100644 --- a/src/editor/core/event/CanvasEvent.ts +++ b/src/editor/core/event/CanvasEvent.ts @@ -1,5 +1,5 @@ import { ElementType } from '../..' -import { ZERO } from '../../dataset/constant/Common' +import { NBSP, ZERO } from '../../dataset/constant/Common' import { EDITOR_ELEMENT_COPY_ATTR } from '../../dataset/constant/Element' import { ElementStyleKey } from '../../dataset/enum/ElementStyle' import { MouseEventButton } from '../../dataset/enum/Event' @@ -453,6 +453,9 @@ export class CanvasEvent { evt.preventDefault() } else if (evt.key === KeyMap.ESC) { this.clearPainterStyle() + } else if (evt.key === KeyMap.TAB) { + this.input(NBSP.repeat(4)) + evt.preventDefault() } } diff --git a/src/editor/dataset/constant/Common.ts b/src/editor/dataset/constant/Common.ts index fdfb73f..470ce7b 100644 --- a/src/editor/dataset/constant/Common.ts +++ b/src/editor/dataset/constant/Common.ts @@ -1,3 +1,4 @@ export const ZERO = '\u200B' export const WRAP = '\n' -export const HORIZON_TAB = '\t' \ No newline at end of file +export const HORIZON_TAB = '\t' +export const NBSP = '\u0020' \ No newline at end of file diff --git a/src/editor/dataset/enum/KeyMap.ts b/src/editor/dataset/enum/KeyMap.ts index 38bcb85..df1db32 100644 --- a/src/editor/dataset/enum/KeyMap.ts +++ b/src/editor/dataset/enum/KeyMap.ts @@ -7,6 +7,7 @@ export enum KeyMap { Up = 'ArrowUp', Down = 'ArrowDown', ESC = 'Escape', + TAB = 'Tab', A = 'a', C = 'c', S = 's',