Visual studio code 能否将多个全局字符串传递给vscode findFiles api

Visual studio code 能否将多个全局字符串传递给vscode findFiles api,visual-studio-code,vscode-extensions,Visual Studio Code,Vscode Extensions,我想在调用apiFindFile()时忽略已排除在工作区设置中的文件夹,但我不确定如何执行此操作。我曾试图寻找一种方法来组合glob语句,但运气不太好。我已经找到了GLOB_brake示例,但我认为这在本例中不起作用 (例如glob(“{foo/.cpp,bar/.cpp}”,glob_括号)) 有没有一种方法可以将多个目录传递给FindFile中的glob语句以忽略 我很想做这样的事情 let search_config = vscode.workspace.getConfiguration(

我想在调用api
FindFile
()时忽略已排除在工作区设置中的文件夹,但我不确定如何执行此操作。我曾试图寻找一种方法来组合glob语句,但运气不太好。我已经找到了GLOB_brake示例,但我认为这在本例中不起作用

(例如glob(“{foo/.cpp,bar/.cpp}”,glob_括号))

有没有一种方法可以将多个目录传递给FindFile中的glob语句以忽略

我很想做这样的事情

let search_config = vscode.workspace.getConfiguration( "search" );
let search_exclude_settings = search_config.get( "exclude" );
let exclude_properties = "{";
for ( var exclude in search_exclude_settings ) {
    if( search_exclude_settings.hasOwnProperty( exclude ) ) {
        exclude_properties += exclude + ",";
    }
}
exclude_properties += filename_and_extension + "}";

var files = vscode.workspace.findFiles(filename_search, exclude_properties, 100);
但不幸的是,这不起作用。任何想法都将不胜感激!如果我可能遗漏了一些显而易见的东西,我会道歉

谢谢你抽出时间


Tom

好的,我上面列出的代码示例确实有效,但我还没有意识到


我快速查看了vscode源代码,在src/vs/base/commom/glob.ts中有一些可以使用的正则表达式示例以及它们的解析方式。使用“{”和“然后”,“分隔符被正确处理”。

我刚刚在VSCODE源中确认它不解释被排除的文件。我认为这是一个bug或缺失的特性,我将提交。同时,另一种方法可能是使用()。要手动筛选结果,而不是尝试生成glob.Hi Seairth!非常感谢您澄清这一点,我只是想确保我没有遗漏任何明显的内容!感谢您对此进行调查。如果您已经为此打开了一个问题/请求,您是否可以在此处添加链接,我可以给它一个+1;)再次感谢!