本文整理匯總了TypeScript中vs/editor/common/commands/shiftCommand.ShiftCommand類的典型用法代碼示例。如果您正苦於以下問題:TypeScript ShiftCommand類的具體用法?TypeScript ShiftCommand怎麽用?TypeScript ShiftCommand使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了ShiftCommand類的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: _goodIndentForLine
private static _goodIndentForLine(config: CursorConfiguration, model: ITokenizedModel, lineNumber: number): string {
let lastLineNumber = lineNumber - 1;
for (lastLineNumber = lineNumber - 1; lastLineNumber >= 1; lastLineNumber--) {
let lineText = model.getLineContent(lastLineNumber);
let nonWhitespaceIdx = strings.lastNonWhitespaceIndex(lineText);
if (nonWhitespaceIdx >= 0) {
break;
}
}
if (lastLineNumber < 1) {
// No previous line with content found
return '\t';
}
let r = LanguageConfigurationRegistry.getEnterActionAtPosition(model, lastLineNumber, model.getLineMaxColumn(lastLineNumber));
let indentation: string;
if (r.enterAction.indentAction === IndentAction.Outdent) {
let desiredIndentCount = ShiftCommand.unshiftIndentCount(r.indentation, r.indentation.length, config.tabSize);
indentation = '';
for (let i = 0; i < desiredIndentCount; i++) {
indentation += '\t';
}
indentation = config.normalizeIndentation(indentation);
} else {
indentation = r.indentation;
}
let result = indentation + r.enterAction.appendText;
if (result.length === 0) {
// good position is at column 1, but we gotta do something...
return '\t';
}
return result;
}
示例2:
unshiftIndent: (indentation) => {
return ShiftCommand.unshiftIndent(indentation, indentation.length + 1, tabSize, indentSize, insertSpaces);
}
示例3: unshiftIndent
public static unshiftIndent(config: CursorConfiguration, indentation: string, count?: number): string {
count = count || 1;
return ShiftCommand.unshiftIndent(indentation, indentation.length + count, config.tabSize, config.indentSize, config.insertSpaces);
}