如何自定义vscode的差异编辑器显示以忽略某些差异?

时间:2019-08-24 19:47:52

标签: visual-studio-code vscode-extensions

在我的vscode扩展名中,我想比较差异编辑器中的预期测试结果与实际测试结果。预期结果yaml文件包含动态替换的表达式,在并排编辑器中,我要控制突出显示哪些差异。

预期:

   request:
     url: '${baseUrl}/movies/${id}'
     method: GET
   #...

实际:

  request:
    url: 'http://localhost/api/movies/435b30ad' # (diff should be ignored)
    method: GET
  #...

我可以直接提供差异吗?

此刻,在打开差异编辑器后,我将像这样应用装饰:

    async diffResults(expected: vscode.Uri, actual: vscode.Uri) {
        await vscode.commands.executeCommand('vscode.diff', expected, actual);
        const expectedEditor = await this.findEditor(expected);
        if (expectedEditor) {
            this.decorator.applyDecorations(expectedEditor);
        }
        const actualEditor = await this.findEditor(actual);
        if (actualEditor) {
            this.decorator.applyDecorations(actualEditor);
        }
    }

但是,我的装饰覆盖在默认的diff装饰之上,而不是取代它们。此外,我认为装饰器方法不是处理此问题的正确方法。如果可能的话,我想将自己的实际差异提供给编辑器,然后让vscode处理修饰。

0 个答案:

没有答案