mirror of
https://github.com/TriliumNext/Notes.git
synced 2025-07-27 10:02:59 +08:00
feat(slash): alignment
This commit is contained in:
parent
32ee75ea43
commit
1a64b3ce8e
@ -3,6 +3,10 @@ import type { SlashCommandEditorConfig } from 'ckeditor5-premium-features';
|
||||
import { icons as admonitionIcons } from '@triliumnext/ckeditor5-admonition';
|
||||
import { icons as footnoteIcons } from '@triliumnext/ckeditor5-footnotes';
|
||||
import IconPageBreak from "@ckeditor/ckeditor5-icons/theme/icons/page-break.svg?raw";
|
||||
import IconAlignLeft from "@ckeditor/ckeditor5-icons/theme/icons/align-left.svg?raw";
|
||||
import IconAlignCenter from "@ckeditor/ckeditor5-icons/theme/icons/align-center.svg?raw";
|
||||
import IconAlignRight from "@ckeditor/ckeditor5-icons/theme/icons/align-right.svg?raw";
|
||||
import IconAlignJustify from "@ckeditor/ckeditor5-icons/theme/icons/align-justify.svg?raw";
|
||||
import { COMMAND_NAME as INSERT_DATE_TIME_COMMAND } from './plugins/insert_date_time.js';
|
||||
import { COMMAND_NAME as INTERNAL_LINK_COMMAND } from './plugins/internallink.js';
|
||||
import { COMMAND_NAME as INCLUDE_NOTE_COMMAND } from './plugins/includenote.js';
|
||||
@ -18,6 +22,7 @@ type SlashCommandDefinition = SlashCommandEditorConfig["extraCommands"][number];
|
||||
|
||||
export default function buildExtraCommands(): SlashCommandDefinition[] {
|
||||
return [
|
||||
...buildAlignmentExtraCommands(),
|
||||
...buildAdmonitionExtraCommands(),
|
||||
{
|
||||
id: 'footnote',
|
||||
@ -71,6 +76,39 @@ export default function buildExtraCommands(): SlashCommandDefinition[] {
|
||||
];
|
||||
}
|
||||
|
||||
function buildAlignmentExtraCommands(): SlashCommandDefinition[] {
|
||||
return [
|
||||
{
|
||||
id: "align-left",
|
||||
title: "Align Left",
|
||||
description: "Align text to the left",
|
||||
icon: IconAlignLeft,
|
||||
execute: (editor: Editor) => editor.execute("alignment", { value: "left" }),
|
||||
},
|
||||
{
|
||||
id: "align-center",
|
||||
title: "Align Center",
|
||||
description: "Align text to the center",
|
||||
icon: IconAlignCenter,
|
||||
execute: (editor: Editor) => editor.execute("alignment", { value: "center" }),
|
||||
},
|
||||
{
|
||||
id: "align-right",
|
||||
title: "Align Right",
|
||||
description: "Align text to the right",
|
||||
icon: IconAlignRight,
|
||||
execute: (editor: Editor) => editor.execute("alignment", { value: "right" }),
|
||||
},
|
||||
{
|
||||
id: "align-justify",
|
||||
title: "Justify",
|
||||
description: "Justify text alignment",
|
||||
icon: IconAlignJustify,
|
||||
execute: (editor: Editor) => editor.execute("alignment", { value: "justify" }),
|
||||
}
|
||||
];
|
||||
}
|
||||
|
||||
function buildAdmonitionExtraCommands(): SlashCommandDefinition[] {
|
||||
const commands: SlashCommandDefinition[] = [];
|
||||
for (const [ keyword, definition ] of Object.entries(ADMONITION_TYPES)) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user