Enable semantic features for untitled files on web (#229426)

Fixes #229424

Also removes an old scheme that is no longer used
This commit is contained in:
Matt Bierner
2024-09-23 11:55:37 -07:00
committed by GitHub
parent f00e53f8fd
commit 4840eb096d
3 changed files with 16 additions and 13 deletions

View File

@@ -21,21 +21,24 @@ export const officeScript = 'office-script';
/** Used for code blocks in chat by vs code core */
export const chatCodeBlock = 'vscode-chat-code-block';
/** Used for code blocks in chat by copilot. */
export const chatBackingCodeBlock = 'vscode-copilot-chat-code-block';
export function getSemanticSupportedSchemes() {
if (isWeb() && vscode.workspace.workspaceFolders) {
return vscode.workspace.workspaceFolders.map(folder => folder.uri.scheme);
}
return [
file,
const alwaysSupportedSchemes = [
untitled,
walkThroughSnippet,
vscodeNotebookCell,
chatCodeBlock,
chatBackingCodeBlock,
];
if (isWeb()) {
return [
...(vscode.workspace.workspaceFolders ?? []).map(folder => folder.uri.scheme),
...alwaysSupportedSchemes,
];
}
return [
file,
...alwaysSupportedSchemes,
];
}

View File

@@ -94,7 +94,7 @@ class TypeScriptWorkspaceSymbolProvider implements vscode.WorkspaceSymbolProvide
}
const uri = this.client.toResource(item.file);
if (fileSchemes.isOfScheme(uri, fileSchemes.chatCodeBlock, fileSchemes.chatBackingCodeBlock)) {
if (fileSchemes.isOfScheme(uri, fileSchemes.chatCodeBlock)) {
return;
}

View File

@@ -197,7 +197,7 @@ class SyncedBuffer {
return tsRoot?.startsWith(inMemoryResourcePrefix) ? undefined : tsRoot;
}
return fileSchemes.isOfScheme(resource, fileSchemes.officeScript, fileSchemes.chatCodeBlock, fileSchemes.chatBackingCodeBlock) ? '/' : undefined;
return fileSchemes.isOfScheme(resource, fileSchemes.officeScript, fileSchemes.chatCodeBlock) ? '/' : undefined;
}
public get resource(): vscode.Uri {
@@ -752,7 +752,7 @@ export default class BufferSyncSupport extends Disposable {
}
private shouldValidate(buffer: SyncedBuffer): boolean {
if (fileSchemes.isOfScheme(buffer.resource, fileSchemes.chatCodeBlock, fileSchemes.chatBackingCodeBlock)) {
if (fileSchemes.isOfScheme(buffer.resource, fileSchemes.chatCodeBlock)) {
return false;
}