비주얼 스튜디오 - Output 창에 색상이 지정된 출력 결과가 "[39m[22m" 식의 문자로 나오는 문제
".NET Conf 2022 x Seoul, Day 1"의 2:56:32 시간에 해당하는 영상을 보면 비주얼 스튜디오의 출력 창에 다음과 같은 결과가 나온다는 언급을 하고 있습니다.
Rebuild started...
1>------ Rebuild All started: Project: BlazorApp1, Configuration: Debug Any CPU ------
Restored F:\test\BlazorApp1\BlazorApp1\BlazorApp1.csproj (in 19 ms).
1>
1>> blazorapp1@1.0.0 build
1>> webpack --mode=production
1>
1>asset [1m[32mBlazorApp1.js[39m[22m 4.23 KiB [1m[33m[compared for emit][39m[22m [1m[32m[minimized][39m[22m (name: main)
1>runtime modules 937 bytes 4 modules
1>modules by path [1m./node_modules/[39m[22m 8.07 KiB
1> modules by path [1m./node_modules/style-loader/dist/runtime/*.js[39m[22m 5.75 KiB
1> [1m./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js[39m[22m 2.44 KiB [1m[33m[built][39m[22m [1m[33m[code generated][39m[22m
1> [1m./node_modules/style-loader/dist/runtime/styleDomAPI.js[39m[22m 1.38 KiB [1m[33m[built][39m[22m [1m[33m[code generated][39m[22m
1> [1m./node_modules/style-loader/dist/runtime/insertBySelector.js[39m[22m 1010 bytes [1m[33m[built][39m[22m [1m[33m[code generated][39m[22m
1> [1m./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js[39m[22m 300 bytes [1m[33m[built][39m[22m [1m[33m[code generated][39m[22m
1> + 2 modules
1> modules by path [1m./node_modules/css-loader/dist/runtime/*.js[39m[22m 2.33 KiB
1> [1m./node_modules/css-loader/dist/runtime/noSourceMaps.js[39m[22m 64 bytes [1m[33m[built][39m[22m [1m[33m[code generated][39m[22m
1> [1m./node_modules/css-loader/dist/runtime/api.js[39m[22m 2.26 KiB [1m[33m[built][39m[22m [1m[33m[code generated][39m[22m
1>modules by path [1m./*.scss[39m[22m 1.62 KiB
1> [1m./index.scss[39m[22m 1.18 KiB [1m[33m[built][39m[22m [1m[33m[code generated][39m[22m
1> ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js![1m./index.scss[39m[22m 451 bytes [1m[33m[built][39m[22m [1m[33m[code generated][39m[22m
1>[1m./index.ts[39m[22m 129 bytes [1m[33m[built][39m[22m [1m[33m[code generated][39m[22m
1>webpack 5.68.0 compiled [1m[32msuccessfully[39m[22m in 1310 ms
1>BlazorApp1 -> F:\test\BlazorApp1\BlazorApp1\bin\Debug\BlazorApp1.dll
1>BlazorApp1 (Blazor output) -> F:\test\BlazorApp1\BlazorApp1\bin\Debug\wwwroot
1>C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Microsoft\VisualStudio\v17.0\TypeScript\Microsoft.TypeScript.targets(88,5): warning : Your project does not specify a TypeScriptToolsVersion. The latest available TypeScript compiler will be used (4.3). To remove this warning, set TypeScriptToolsVersion to a specific version or "Latest" to always select the latest compiler.
1>Done building project "BlazorApp1.csproj".
========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========
원래 위의 출력 결과를 명령행에서 보면 다음과 같이 나오는데요,
딱 봐도, 색상에 해당하는 표시가 "[1m[33m" 이런 식의 알 수 없는 문자로 나오는 것을 짐작게 합니다. 이 문제는, Visual Studio의 Output 창이 컬러에 대한 escape 문자 지원을 하지 않아서 그런 것입니다, 현재 이와 같은 문제를 제시한 이슈가 있는데요,
ANSI Color Support in the Output Window
; https://developercommunity.visualstudio.com/t/ansi-color-support-in-the-output-window/1605405
2021년 12월에 제출되었고 답변을 참고했을 때 아마도 조만간 소식이 나오지 않을까 싶습니다. (아울러 관심 있으신 분들은 voting에 참여하시는 것도 좋겠고. ^^)
[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]