dotnet / vscode-csharp

Official C# support for Visual Studio Code
MIT License
2.85k stars 670 forks source link

Code blocks for xmldoc specifications escapes content #5130

Open mhouckcd opened 2 years ago

mhouckcd commented 2 years ago

When viewing <code> blocks from xmldocs in csharp, some characters are escaped. In visual studio these are not escaped and are tabbed inwards to indicate code blocks.

Steps to Reproduce

  1. Create XML documentation with code blocks
  2. Insure code blocks do not have illegal characters (as per https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/xmldoc/recommended-tags#code)
  3. View shows dots, and other strings escaped (see attached images)
/// <summary>
/// Extension method used for a more terse creation of a list from a null list already instanced or created elsewhere.
/// i.e. Given: 
/// <code>
///     List&lt;CustomObjectType&gt; co;
/// </code>
/// we may create a quick instance as so:
/// <code>
///     co = co.Init();
/// </code>
/// as opposed to:
/// <code>
///     co = new List&lt;CustomObjectType&gt;();
/// </code>
/// I would like to be able to do this as just co.Init();, however due to a restriction on the language itself
/// you are unable to perform a ref this on non struct types. 
/// </summary>
public static List<T> Init<T>(this List<T> nullListToInitialize)
{
    return new List<T>();
}

Expected Behavior

vs2022-noescape-code-block

Actual Behavior

vscode-escape-code-blocks

Environment information

VSCode version: 1.65.2 C# Extension: 1.24.1

Dotnet Information .NET SDK (reflecting any global.json): Version: 6.0.200 Commit: 4c30de7899 Runtime Environment: OS Name: Windows OS Version: 10.0.19043 OS Platform: Windows RID: win10-x64 Base Path: C:\Program Files\dotnet\sdk\6.0.200\ Host (useful for support): Version: 6.0.2 Commit: 839cdfb0ec .NET SDKs installed: 2.1.402 [C:\Program Files\dotnet\sdk] 2.1.526 [C:\Program Files\dotnet\sdk] 3.1.417 [C:\Program Files\dotnet\sdk] 5.0.301 [C:\Program Files\dotnet\sdk] 5.0.303 [C:\Program Files\dotnet\sdk] 6.0.101 [C:\Program Files\dotnet\sdk] 6.0.200 [C:\Program Files\dotnet\sdk] .NET runtimes installed: Microsoft.AspNetCore.All 2.1.4 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All] Microsoft.AspNetCore.All 2.1.13 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All] Microsoft.AspNetCore.All 2.1.28 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All] Microsoft.AspNetCore.All 2.1.30 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All] Microsoft.AspNetCore.App 2.1.4 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 2.1.13 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 2.1.28 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 2.1.30 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 3.1.16 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 3.1.23 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 5.0.7 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 5.0.9 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 5.0.15 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 6.0.1 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 6.0.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.NETCore.App 2.1.4 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 2.1.13 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 2.1.28 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 2.1.30 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 3.1.16 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 3.1.23 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 5.0.7 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 5.0.9 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 5.0.15 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 6.0.1 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 6.0.2 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.WindowsDesktop.App 3.1.16 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] Microsoft.WindowsDesktop.App 3.1.23 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] Microsoft.WindowsDesktop.App 5.0.7 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] Microsoft.WindowsDesktop.App 5.0.9 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] Microsoft.WindowsDesktop.App 5.0.15 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] Microsoft.WindowsDesktop.App 6.0.1 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] Microsoft.WindowsDesktop.App 6.0.2 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] To install additional .NET runtimes or SDKs: https://aka.ms/dotnet-download
Visual Studio Code Extensions |Extension|Author|Version| |---|---|---| |better-cpp-syntax|jeff-hykin|1.15.13| |Bookmarks|alefragnani|13.2.4| |c-cpp-runner|franneck94|3.2.4| |cmake|twxs|0.0.17| |cmake-tools|ms-vscode|1.10.5| |cpptools|ms-vscode|1.9.7| |cpptools-extension-pack|ms-vscode|1.1.0| |cpptools-themes|ms-vscode|1.0.0| |csharp|ms-dotnettools|1.24.1| |dotnet-interactive-vscode|ms-dotnettools|1.0.3175020| |dotnet-test-explorer|formulahendry|0.7.7| |doxdocgen|cschlosser|1.4.0| |file-and-folder-icons|nextbook|1.0.4| |jupyter|ms-toolsai|2022.2.1030672458| |jupyter-keymap|ms-toolsai|1.0.0| |jupyter-renderers|ms-toolsai|1.0.6| |powershell|ms-vscode|2021.12.0| |python|ms-python|2022.2.1924087327| |remote-containers|ms-vscode-remote|0.224.3| |remote-ssh|ms-vscode-remote|0.76.1| |remote-wsl|ms-vscode-remote|0.64.2| |vscode-docker|ms-azuretools|1.21.0| |vscode-dotnet-pack|ms-dotnettools|1.0.8| |vscode-dotnet-runtime|ms-dotnettools|1.5.0| |vscode-kubernetes-tools|ms-kubernetes-tools|1.3.7| |vscode-lldb|vadimcn|1.7.0| |vscode-nuget-gallery|patcx|0.0.24| |vscode-nuget-package-manager|jmrog|1.1.6| |vscode-pylance|ms-python|2022.3.3| |vscode-surround|yatki|1.2.2| |vscode-yaml|redhat|1.5.1|;
nohwnd commented 2 years ago

Thanks for reporting, this looks like a bug that we will need to investigate.

seriouz commented 1 year ago

The problem still exists! It's very annoying.

Happyrobot33 commented 7 months ago

bumping this issue