Visual Studio代码,使用WSL进行Python linting(适用于Linux的Windows子系统)

时间:2017-10-05 19:40:49

标签: python visual-studio-code vscode-settings windows-subsystem-for-linux bash-on-windows

我在64位PC上使用Windows 10。最近,我开始在Windows上使用VS Code和Ubuntu Bash。一切都很好,除了linting。我试图让它与pylint和pep8一起使用,但它们都没有用。我认为这个问题是由于棉绒的位置造成的。但是,我无法弄清楚如何解决问题。您可以检查我的pylint设置:

// Whether to lint Python files using pylint.
"python.linting.pylintEnabled": true,

// Severity of Pylint message type 'Convention/C'.
"python.linting.pylintCategorySeverity.convention": "Information",

// Severity of Pylint message type 'Refactor/R'.
"python.linting.pylintCategorySeverity.refactor": "Hint",

// Severity of Pylint message type 'Warning/W'.
"python.linting.pylintCategorySeverity.warning": "Warning",

// Severity of Pylint message type 'Error/E'.
"python.linting.pylintCategorySeverity.error": "Error",

// Severity of Pylint message type 'Fatal/F'.
"python.linting.pylintCategorySeverity.fatal": "Error",

// Path to Pylint, you can use a custom version of pylint by modifying this 
// setting to include the full path.
"python.linting.pylintPath": "pylint",

// Arguments passed in. Each argument is a separate item in the array.
"python.linting.pylintArgs": [],

我将不胜感激任何帮助。谢谢......

3 个答案:

答案 0 :(得分:4)

据我所知,如果您正在使用WSL,那么shell与VSCode是一个独立的环境。这就是为什么git扩展won't work除非您安装Windows版本,即使您已经在WSL中安装它。虽然有可能invoke WSL from Windows,但我还是无法让它发挥作用。

因此,对于linting,在Windows中安装Python和flake8(例如在Git Bash中使用pip install flake8),你应该没问题。

P.S。如果有人能告诉我,我很想知道!基本上下载两次东西(一次在Windows中,一次在WSL中)有点烦人。

答案 1 :(得分:2)

切换回Windows后,我一直在为此苦苦挣扎,发现了这一点: https://github.com/Microsoft/vscode-python/issues/67

这是涵盖此确切情况的未解决问题,注释中存在一些hack和变通办法,但由于它现在已成为可见且高度优先的问题,所以真正的解决方案是等待vs代码中的修复。

或者,您可以使用此指南在WSL环境中安装VS Code: https://nickjanetakis.com/blog/using-wsl-and-mobaxterm-to-create-a-linux-dev-environment-on-windows

这将运行VS代码的Linux版本,因此将使用安装在其中的环境来删除它。

答案 2 :(得分:0)

Visual Studio Code刚刚发布了一个使用WSL正确运行应用程序的教程。

Remote development in WSL