vscode-code-runner:运行PowerShell,输出有很多奇怪的字符

x759pob2  于 12个月前  发布在  Shell
关注(0)|答案(1)|浏览(146)

我使用Visual Studio代码和Code Runner Extension来运行PowerShell脚本。它可以工作,但输出非常奇怪,充满了不可读的字符。
德语变音未显示(在下面的截图中用红色箭头标记),并且有奇怪的字符(蓝色箭头):

我尝试在不同代码页的代码运行器的settings.json中添加一个字符集:

"code-runner.executorMap": { "powershell": "chcp 1252 & pwsh -ExecutionPolicy ByPass -File"}

字符串
但无济于事。
我的脚本文件都是utf8格式的,当我从终端窗口运行PowerShell和脚本时,输出看起来很好:

vawmfj5a

vawmfj5a1#

Visual Studio Code有一个专用的PowerShell extension,它可以避免您面临的问题,并且由于为PowerShell开发和调试提供了丰富的支持**,因此通常更受欢迎。
如果你仍然想使用Code Runner Extension,下面的 * 可能 * 有帮助(未经测试):

"code-runner.executorMap": { "powershell": "chcp 65001 & set NO_COLOR=1 & pwsh -ExecutionPolicy ByPass -File"}

字符串

  • chcp 65001将活动代码页设置为65001,即UTF-8,然后PowerShell在发出输出时使用它。
  • 定义NO_COLOR环境变量指示PowerShell不要使用ANSI/VT转义序列来 * 着色 * 其用于显示的格式化输出。

正是这些转义序列,Code Runner并没有这样呈现,导致这些工件用蓝色箭头突出显示。
参见:PowerShell的概念about_ANSI_Terminals帮助主题。

相关问题