本文整理汇总了TypeScript中@typewriter/editor.Editor.formatLine方法的典型用法代码示例。如果您正苦于以下问题:TypeScript Editor.formatLine方法的具体用法?TypeScript Editor.formatLine怎么用?TypeScript Editor.formatLine使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类@typewriter/editor.Editor
的用法示例。
在下文中一共展示了Editor.formatLine方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1:
lines.forEach(line => {
const block = paper.blocks.findByAttributes(line.attributes, true);
if (block.indentable) {
const indent = (line.attributes.indent || 0) + direction;
if (indent < 0) {
editor.formatLine(line.start, {});
} else {
const attributes = { ...line.attributes, indent };
editor.formatLine(line.start, attributes);
}
}
});
示例2: onEnter
function onEnter(event: KeyboardEvent) {
if (event.defaultPrevented) return;
event.preventDefault();
let [ from, to ] = editor.getSelectedRange();
const line = editor.contents.getLine(from);
let attributes = line.attributes;
const block = paper.blocks.findByAttributes(attributes, true);
const isDefault = block === paper.blocks.getDefault();
const length = line.end - line.start - 1;
const atEnd = to === line.end - 1;
if (atEnd && !isDefault && block.defaultFollows) {
attributes = {};
} else if (typeof block.getNextLineAttributes === 'function') {
attributes = block.getNextLineAttributes(attributes);
}
const activeFormats = editor.activeFormats;
if (!length && !isDefault && !block.defaultFollows && from === to) {
editor.formatLine(from, to, {}, SOURCE_USER);
} else {
const selection = from + 1;
// Insert the newline after the current newline, not before it
if (atEnd && from === to) from = to = from + 1;
editor.insertText(from, to, '\n', attributes, SOURCE_USER, selection);
}
editor.activeFormats = activeFormats;
}
示例3: flattenBlock
function flattenBlock(line, force?: boolean) {
const block = paper.blocks.findByAttributes(line.attributes, true);
if (block.indentable && line.attributes.indent) {
onTab(new CustomEvent('shortcut', { detail: 'Shift+Tab' }));
return true;
}
if (block && (force || block !== paper.blocks.getDefault() && !block.defaultFollows)) {
editor.formatLine(from, {}, SOURCE_USER);
return true;
}
}
示例4:
const change = editor.getChange(() => {
editor.formatLine(index, attributes);
editor.deleteText(index - prefix.length, index);
});