2 * @param {Editor} editor
4 export function register(editor) {
6 for (let i = 1; i < 5; i++) {
7 editor.shortcuts.add('meta+' + i, '', ['FormatBlock', false, 'h' + (i+1)]);
10 // Other block shortcuts
11 editor.shortcuts.add('meta+5', '', ['FormatBlock', false, 'p']);
12 editor.shortcuts.add('meta+d', '', ['FormatBlock', false, 'p']);
13 editor.shortcuts.add('meta+6', '', ['FormatBlock', false, 'blockquote']);
14 editor.shortcuts.add('meta+q', '', ['FormatBlock', false, 'blockquote']);
15 editor.shortcuts.add('meta+7', '', ['codeeditor', false, 'pre']);
16 editor.shortcuts.add('meta+e', '', ['codeeditor', false, 'pre']);
17 editor.shortcuts.add('meta+8', '', ['FormatBlock', false, 'code']);
18 editor.shortcuts.add('meta+shift+E', '', ['FormatBlock', false, 'code']);
20 // Save draft shortcut
21 editor.shortcuts.add('meta+S', '', () => {
22 window.$events.emit('editor-save-draft');
26 editor.shortcuts.add('meta+13', '', () => {
27 window.$events.emit('editor-save-page');
30 // Loop through callout styles
31 editor.shortcuts.add('meta+9', '', function() {
32 const selectedNode = editor.selection.getNode();
33 const callout = selectedNode ? selectedNode.closest('.callout') : null;
35 const formats = ['info', 'success', 'warning', 'danger'];
36 const currentFormatIndex = formats.findIndex(format => callout && callout.classList.contains(format));
37 const newFormatIndex = (currentFormatIndex + 1) % formats.length;
38 const newFormat = formats[newFormatIndex];
40 editor.formatter.apply('callout' + newFormat);