當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript Model.pushEditOperations方法代碼示例

本文整理匯總了TypeScript中vs/editor/common/model/model.Model.pushEditOperations方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript Model.pushEditOperations方法的具體用法?TypeScript Model.pushEditOperations怎麽用?TypeScript Model.pushEditOperations使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在vs/editor/common/model/model.Model的用法示例。


在下文中一共展示了Model.pushEditOperations方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: format

	function format(unformatted: string, expected: string, insertSpaces = true) {
		var range : EditorCommon.IRange = null;

		var mirrorModel = MirrorModel.createTestMirrorModelFromString(unformatted);

		var rangeStart = unformatted.indexOf('|');
		var rangeEnd = unformatted.lastIndexOf('|');
		if (rangeStart !== -1 && rangeEnd !== -1) {
			unformatted = unformatted.substring(0, rangeStart) + unformatted.substring(rangeStart + 1, rangeEnd) + unformatted.substring(rangeEnd + 1);

			var startPos = mirrorModel.getPositionFromOffset(rangeStart);
			var endPos = mirrorModel.getPositionFromOffset(rangeEnd);
			range = { startLineNumber: startPos.lineNumber, startColumn: startPos.column, endLineNumber: endPos.lineNumber, endColumn: endPos.column };
			mirrorModel = MirrorModel.createTestMirrorModelFromString(unformatted);
		}

		var operations = Formatter.format(mirrorModel, range, { tabSize: 2, insertSpaces: insertSpaces });

		var model = new Model(unformatted, Model.DEFAULT_CREATION_OPTIONS, null);
		model.pushEditOperations([], operations.map(o => {
			return {
				range: Range.lift(o.range),
				text: o.text,
				identifier: null,
				forceMoveMarkers: false
			};
		}), () => []);
		var newContent = model.getValue(EditorCommon.EndOfLinePreference.LF);
		assert.equal(newContent, expected);
		model.dispose();
	}
開發者ID:13572293130,項目名稱:vscode,代碼行數:31,代碼來源:formatter.test.ts


注:本文中的vs/editor/common/model/model.Model.pushEditOperations方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。