diff --git a/src/PowerShellEditorServices/Services/Analysis/AnalysisService.cs b/src/PowerShellEditorServices/Services/Analysis/AnalysisService.cs index a9ce58fe2..3e42ee0e9 100644 --- a/src/PowerShellEditorServices/Services/Analysis/AnalysisService.cs +++ b/src/PowerShellEditorServices/Services/Analysis/AnalysisService.cs @@ -867,19 +867,11 @@ private void PublishScriptDiagnostics( fileLock.Release(); } - - var uriBuilder = new UriBuilder - { - Scheme = Uri.UriSchemeFile, - Path = scriptFile.FilePath, - Host = string.Empty, - }; - // Always send syntax and semantic errors. We want to // make sure no out-of-date markers are being displayed. _languageServer.Document.PublishDiagnostics(new PublishDiagnosticsParams() { - Uri = uriBuilder.Uri, + Uri = new Uri(scriptFile.DocumentUri), Diagnostics = new Container(diagnostics), }); } diff --git a/src/PowerShellEditorServices/Services/Symbols/ScriptDocumentSymbolProvider.cs b/src/PowerShellEditorServices/Services/Symbols/ScriptDocumentSymbolProvider.cs index 1ba81b180..6cc43250d 100644 --- a/src/PowerShellEditorServices/Services/Symbols/ScriptDocumentSymbolProvider.cs +++ b/src/PowerShellEditorServices/Services/Symbols/ScriptDocumentSymbolProvider.cs @@ -20,15 +20,11 @@ public class ScriptDocumentSymbolProvider : IDocumentSymbolProvider IEnumerable IDocumentSymbolProvider.ProvideDocumentSymbols( ScriptFile scriptFile) { - if (scriptFile != null && - scriptFile.FilePath != null && - (scriptFile.FilePath.EndsWith(".ps1", StringComparison.OrdinalIgnoreCase) || - scriptFile.FilePath.EndsWith(".psm1", StringComparison.OrdinalIgnoreCase))) - { - return FindSymbolsInDocument(scriptFile.ScriptAst); - } - - return Enumerable.Empty(); + // If we have an AST, then we know it's a PowerShell file + // so lets try to find symbols in the document. + return scriptFile?.ScriptAst != null + ? FindSymbolsInDocument(scriptFile.ScriptAst) + : Enumerable.Empty(); } ///