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


TypeScript vscode-languageserver-types.TextEdit類代碼示例

本文整理匯總了TypeScript中vscode-languageserver-types.TextEdit的典型用法代碼示例。如果您正苦於以下問題:TypeScript TextEdit類的具體用法?TypeScript TextEdit怎麽用?TypeScript TextEdit使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


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

示例1: test

	test('inserts', function (): any {
		let input = TextDocument.create('foo://bar/f', 'html', 0, '012345678901234567890123456789');
		assert.equal(applyEdits(input, [TextEdit.insert(Position.create(0, 0), 'Hello')]), 'Hello012345678901234567890123456789');
		assert.equal(applyEdits(input, [TextEdit.insert(Position.create(0, 1), 'Hello')]), '0Hello12345678901234567890123456789');
		assert.equal(applyEdits(input, [TextEdit.insert(Position.create(0, 1), 'Hello'), TextEdit.insert(Position.create(0, 1), 'World')]), '0HelloWorld12345678901234567890123456789');
		assert.equal(applyEdits(input, [TextEdit.insert(Position.create(0, 2), 'One'), TextEdit.insert(Position.create(0, 1), 'Hello'), TextEdit.insert(Position.create(0, 1), 'World'), TextEdit.insert(Position.create(0, 2), 'Two'), TextEdit.insert(Position.create(0, 2), 'Three')]), '0HelloWorld1OneTwoThree2345678901234567890123456789');
	});
開發者ID:sameer-coder,項目名稱:vscode,代碼行數:7,代碼來源:utils.test.ts

示例2: toReplaceTextedit

function toReplaceTextedit(
  prettierifiedCode: string,
  range: Range,
  formatParams: FormattingOptions,
  initialIndent: boolean
): TextEdit {
  if (initialIndent) {
    // Prettier adds newline at the end
    const formattedCode = '\n' + indentSection(prettierifiedCode, formatParams);
    return TextEdit.replace(range, formattedCode);
  } else {
    return TextEdit.replace(range, '\n' + prettierifiedCode);
  }
}
開發者ID:cryptobuks,項目名稱:tandem,代碼行數:14,代碼來源:index.ts

示例3: test

	test('TextEdit has correct replace text and range', () => {
		const value = './';
		const activeFileFsPath = path.resolve(fixtureRoot, 'index.html');
		const range = toRange(0, 3, 5);
		const expectedReplaceRange = toRange(0, 4, 4);

		const suggestions = providePathSuggestions(value, range, activeFileFsPath);

		assertSuggestions(suggestions, [
			{ textEdit: TextEdit.replace(expectedReplaceRange, 'about/') },
			{ textEdit: TextEdit.replace(expectedReplaceRange, 'index.html') },
			{ textEdit: TextEdit.replace(expectedReplaceRange, 'src/') },
		]);
	});
開發者ID:sameer-coder,項目名稱:vscode,代碼行數:14,代碼來源:pathCompletion.test.ts

示例4: collectCloseTagSuggestions

  function collectCloseTagSuggestions(
    afterOpenBracket: number,
    matchingOnly: boolean,
    tagNameEnd: number = offset
  ): CompletionList {
    const range = getReplaceRange(afterOpenBracket, tagNameEnd);
    const closeTag = isFollowedBy(text, tagNameEnd, ScannerState.WithinEndTag, TokenType.EndTagClose) ? '' : '>';
    let curr = node;
    while (curr) {
      const tag = curr.tag;
      if (tag && (!curr.closed || curr.endTagStart && (curr.endTagStart > offset))) {
        const item: CompletionItem = {
          label: '/' + tag,
          kind: CompletionItemKind.Property,
          filterText: '/' + tag + closeTag,
          textEdit: TextEdit.replace(range, '/' + tag + closeTag),
          insertTextFormat: InsertTextFormat.PlainText
        };
        const startIndent = getLineIndent(curr.start);
        const endIndent = getLineIndent(afterOpenBracket - 1);
        if (startIndent !== null && endIndent !== null && startIndent !== endIndent) {
          const insertText = startIndent + '</' + tag + closeTag;
          (item.textEdit = TextEdit.replace(getReplaceRange(afterOpenBracket - 1 - endIndent.length), insertText)),
            (item.filterText = endIndent + '</' + tag + closeTag);
        }
        result.items.push(item);
        return result;
      }
      curr = curr.parent;
    }
    if (matchingOnly) {
      return result;
    }

    tagProviders.forEach(provider => {
      provider.collectTags((tag, label) => {
        result.items.push({
          label: '/' + tag,
          kind: CompletionItemKind.Property,
          documentation: label,
          filterText: '/' + tag + closeTag,
          textEdit: TextEdit.replace(range, '/' + tag + closeTag),
          insertTextFormat: InsertTextFormat.PlainText
        });
      });
    });
    return result;
  }
開發者ID:tiravata,項目名稱:vetur,代碼行數:48,代碼來源:htmlCompletion.ts

示例5: test

 test('getChangedPosition #3', () => {
   let pos = Position.create(0, 1)
   let r = Range.create(addPosition(pos, 0, -1), pos)
   let edit = TextEdit.replace(r, 'a\nb\n')
   let res = getChangedPosition(pos, edit)
   expect(res).toEqual({ line: 2, character: -1 })
 })
開發者ID:illarionvk,項目名稱:dotfiles,代碼行數:7,代碼來源:position.test.ts

示例6: it

 it('should return false for change to file not exists', async () => {
   let uri = URI.file('/tmp/not_exists').toString()
   let versioned = VersionedTextDocumentIdentifier.create(uri, null)
   let edit = TextEdit.insert(Position.create(0, 0), 'bar')
   let documentChanges = [TextDocumentEdit.create(versioned, [edit])]
   let res = await workspace.applyEdit({ documentChanges })
   expect(res).toBe(false)
 })
開發者ID:illarionvk,項目名稱:dotfiles,代碼行數:8,代碼來源:workspace.test.ts

示例7:

 provider.collectValues(tag, attribute, value => {
   const insertText = addQuotes ? '"' + value + '"' : value;
   result.items.push({
     label: value,
     filterText: insertText,
     kind: CompletionItemKind.Unit,
     textEdit: TextEdit.replace(range, insertText),
     insertTextFormat: InsertTextFormat.PlainText
   });
 });
開發者ID:tiravata,項目名稱:vetur,代碼行數:10,代碼來源:htmlCompletion.ts


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