VS Code 集成终端不启动 GUI 应用程序

VS Code integrated terminal doesn't launch GUI applications

虽然我能够从 Ubuntu 终端 运行 脚本,但在启动 GUI 应用程序时,VS Code 上的集成终端无法 运行 正确。考虑这些例子:

PIL 示例

from PIL import Image
img = Image.open('image.png')
img.show()

浏览器/绘图示例

import plotly.graph_objects as go
fig = go.Figure(
    data=[go.Bar(y=[2, 1, 3])],
    layout_title_text="A Figure Displayed with fig.show()"
)
fig.show()

文本编辑器示例

git rebase -i origin/main

我已经报告了这个错误 here 但我认为它可能不是错误。

可能 DISPLAY 变量未在您的 VS 代码 shell 中设置。在您的工作系统终端中找出该值:

echo $DISPLAY

然后通过 terminal.integrated.env.<platform> 设置在 VS Code 中设置值。按 Ctrl+Shift+P 并搜索 Preferences: Open Settings (JSON)。将以下条目添加到设置文件:

"terminal.integrated.env.linux": {
    "DISPLAY": "<your-display-value>"
}

然后关闭 re-open VS Code 的终端。之后,运行 echo $DISPLAY 应该输出与系统终端相同的值。这应该可以启动 GUI 应用程序。