hotkey.ts 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. export const enum KEYS {
  2. C = 'C',
  3. X = 'X',
  4. Z = 'Z',
  5. Y = 'Y',
  6. A = 'A',
  7. G = 'G',
  8. L = 'L',
  9. F = 'F',
  10. D = 'D',
  11. B = 'B',
  12. P = 'P',
  13. O = 'O',
  14. R = 'R',
  15. T = 'T',
  16. MINUS = '-',
  17. EQUAL = '=',
  18. DIGIT_0 = '0',
  19. DELETE = 'DELETE',
  20. UP = 'ARROWUP',
  21. DOWN = 'ARROWDOWN',
  22. LEFT = 'ARROWLEFT',
  23. RIGHT = 'ARROWRIGHT',
  24. ENTER = 'ENTER',
  25. SPACE = ' ',
  26. TAB = 'TAB',
  27. BACKSPACE = 'BACKSPACE',
  28. ESC = 'ESCAPE',
  29. PAGEUP = 'PAGEUP',
  30. PAGEDOWN = 'PAGEDOWN',
  31. F5 = 'F5',
  32. }
  33. interface HotkeyItem {
  34. type: string
  35. children: {
  36. label: string
  37. value?: string
  38. }[]
  39. }
  40. export const HOTKEY_DOC: HotkeyItem[] = [
  41. {
  42. type: '通用',
  43. children: [
  44. { label: '剪切', value: 'Ctrl + X' },
  45. { label: '复制', value: 'Ctrl + C' },
  46. { label: '粘贴', value: 'Ctrl + V' },
  47. { label: '粘贴为纯文本', value: 'Ctrl + Shift + V' },
  48. { label: '快速复制粘贴', value: 'Ctrl + D' },
  49. { label: '全选', value: 'Ctrl + A' },
  50. { label: '撤销', value: 'Ctrl + Z' },
  51. { label: '恢复', value: 'Ctrl + Y' },
  52. { label: '删除', value: 'Delete / Backspace' },
  53. { label: '多选', value: '按住 Ctrl 或 Shift' },
  54. { label: '打开搜索替换', value: 'Ctrl + F' },
  55. { label: '打印', value: 'Ctrl + P' },
  56. { label: '关闭弹窗', value: 'ESC' },
  57. ],
  58. },
  59. {
  60. type: '幻灯片放映',
  61. children: [
  62. { label: '从头开始放映幻灯片', value: 'F5' },
  63. { label: '从当前开始放映幻灯片', value: 'Shift + F5' },
  64. { label: '切换上一页', value: '↑ / ← / PgUp' },
  65. { label: '切换下一页', value: '↓ / → / PgDown' },
  66. { label: '切换下一页', value: 'Enter / Space' },
  67. { label: '退出放映', value: 'ESC' },
  68. ],
  69. },
  70. {
  71. type: '幻灯片编辑',
  72. children: [
  73. { label: '新建幻灯片', value: 'Enter' },
  74. { label: '移动画布', value: 'Space + 鼠标拖拽' },
  75. { label: '缩放画布', value: 'Ctrl + 鼠标滚轮' },
  76. { label: '放大画布', value: 'Ctrl + =' },
  77. { label: '缩小画布', value: 'Ctrl + -' },
  78. { label: '使画布适应当前屏幕', value: 'Ctrl + 0' },
  79. { label: '上一页(未选中元素)', value: '↑' },
  80. { label: '下一页(未选中元素)', value: '↓' },
  81. { label: '上一页', value: '鼠标上滚 / PgUp' },
  82. { label: '下一页', value: '鼠标下滚 / PgDown' },
  83. { label: '快速创建文本', value: '双击空白处 / T' },
  84. { label: '快速创建矩形', value: 'R' },
  85. { label: '快速创建圆形', value: 'O' },
  86. { label: '快速创建线条', value: 'L' },
  87. { label: '退出绘制状态', value: '鼠标右键' },
  88. ],
  89. },
  90. {
  91. type: '元素操作',
  92. children: [
  93. { label: '移动', value: '↑ / ← / ↓ / →' },
  94. { label: '锁定', value: 'Ctrl + L' },
  95. { label: '组合', value: 'Ctrl + G' },
  96. { label: '取消组合', value: 'Ctrl + Shift + G' },
  97. { label: '置顶层', value: 'Alt + F' },
  98. { label: '置底层', value: 'Alt + B' },
  99. { label: '锁定宽高比例', value: '按住 Ctrl 或 Shift' },
  100. { label: '创建水平 / 垂直线条', value: '按住 Ctrl 或 Shift' },
  101. { label: '切换焦点元素', value: 'Tab' },
  102. { label: '确认图片裁剪', value: 'Enter' },
  103. { label: '完成自定义形状绘制', value: 'Enter' },
  104. ],
  105. },
  106. {
  107. type: '表格编辑',
  108. children: [
  109. { label: '聚焦到下一个单元格', value: 'Tab' },
  110. { label: '移动焦点单元格', value: '↑ / ← / ↓ / →' },
  111. { label: '在上方插入一行', value: 'Ctrl + ↑' },
  112. { label: '在下方插入一行', value: 'Ctrl + ↓' },
  113. { label: '在左侧插入一列', value: 'Ctrl + ←' },
  114. { label: '在右侧插入一列', value: 'Ctrl + →' },
  115. ],
  116. },
  117. {
  118. type: '图表数据编辑',
  119. children: [
  120. { label: '聚焦到下一行', value: 'Enter' },
  121. ],
  122. },
  123. {
  124. type: '文本编辑',
  125. children: [
  126. { label: '加粗', value: 'Ctrl + B' },
  127. { label: '斜体', value: 'Ctrl + I' },
  128. { label: '下划线', value: 'Ctrl + U' },
  129. { label: '行内代码', value: 'Ctrl + E' },
  130. { label: '上角标', value: 'Ctrl + ;' },
  131. { label: '下角标', value: `Ctrl + '` },
  132. { label: '选中段落', value: `ESC` },
  133. ],
  134. },
  135. {
  136. type: '其他快捷操作',
  137. children: [
  138. { label: '添加图片 - 粘贴来自系统剪贴板的图片' },
  139. { label: '添加图片 - 将本地图片拖拽到画布中' },
  140. { label: '添加图片 - 在画布中粘贴SVG代码' },
  141. { label: '添加图片 - 粘贴来自 pexels 的图片链接' },
  142. { label: '添加文本 - 粘贴来自系统剪贴板的文字' },
  143. { label: '添加文本 - 将外部选中文字拖拽到画布中' },
  144. { label: '文本编辑 - 支持 markdown 语法创建列表和引用' },
  145. ],
  146. },
  147. ]