typescript - Sök i filer med VS Code-tillägg


Jag implementerar ett VS Code-tillägg som använder trädvyn.

När användaren klickar på objektet vill jag utföra ett 'sök i filer'-kommando.

public getTreeItem(element: Item): TreeItem {
    return {
        label: element.name,
        collapsibleState: element.isGroup ? TreeItemCollapsibleState.Collapsed : TreeItemCollapsibleState.None,
        command: element.isGroup ? void 0 : {
            command: 'workbench.action.findInFiles',
            arguments: [element.name],
            title: 'Find references'
        }
     ...
   }
}

Som du kan se, skickar jag element.name som ett argument för workbench.action.findInFiles-kommandot. Fungerar inte - det öppnar helt enkelt Sök-sidofältet.

Jag letade efter någon referens i dokumentationen men utan framgång.

Svar #1

Från och med april 2019-versionen (1.34) är detta nu möjligt genom att specificera query-argumentet. Du kan också använda triggerSearch för att starta sökningen omedelbart:

{
    command: 'workbench.action.findInFiles',
    arguments: {
        query: element.name,
        triggerSearch: true
    },
    title: 'Find references'
}

Den fullständiga listan över alternativ är som följer:

export interface IFindInFilesArgs {
    query?: string;
    replace?: string;
    triggerSearch?: boolean;
    filesToInclude?: string;
    filesToExclude?: string;
    isRegex?: boolean;
    isCaseSensitive?: boolean;
    matchWholeWord?: boolean;
}

Observera att query måste vara inställt för att någon av de andra värdena ska respekteras.

Relaterade artiklar