VSCode集成终端无法使用正确的设置启动

时间:2020-09-02 08:47:00

标签: python visual-studio-code terminal anaconda miniconda

启动VSCode时,我的settings.json文件中包含以下JSON,用于确定默认集成终端应如何启动:

    "terminal.integrated.shellArgs.windows": [
        "-ExecutionPolicy",
        "ByPass",
        "-NoExit",
        "-Command",
        "C:\\Miniconda3\\shell\\condabin\\conda-hook.ps1",
        ";conda activate 'C:\\Miniconda3'"
    ],

如预期的那样, default 集成终端在启动时会使用这些shell参数。但是,我还安装了Python扩展,并且进行了大量Python调试。当我尝试调试Python文件时,定义了以下launch.json:

    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python: Current File",
            "type": "python",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal"
        }
    ]

如您所见,当我尝试调试脚本时,Python扩展应使用集成终端。当我单击用户界面中的“开始调试”按钮时,它会启动 second 集成终端,但是启动的 second 却没有 使用上面在settings.json中定义的shell参数,我需要这样做。

任何人都知道当Python扩展启动自己的集成终端时,如何使VSCode可以使用settings.json中定义的集成终端外壳参数吗?还是有什么办法让Python扩展使用集成终端的现有实例,而不是启动不使用这些shell参数的新实例?

谢谢!

1 个答案:

答案 0 :(得分:0)

当您在终端中运行python文件时,终端将显示为 python 类型: enter image description here 当您单击开始调试时,将显示一个新终端,其类型为 Python调试控制台enter image description here 所以这解释了您的问题:

当我单击用户界面中的“开始调试”按钮时,它将启动第二个集成终端

另外,关于调试,应该在launch.json中添加配置,关于终端的设置可以将其保留在属性 args 中。请参阅debugdebug-args。将powershell设置放入settings.json对调试集成终端无效。这就是为什么您发现:

启动的第二个不使用我在settings.json中定义的上述shell参数