首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >flake8中的描述性PyCharm错误

flake8中的描述性PyCharm错误
EN

Stack Overflow用户
提问于 2018-01-02 18:58:06
回答 5查看 30.9K关注 0票数 26

PyCharm没有此刻。但是,可以将flake8配置为作为外部工具运行。

有时,特别是对于Python来说,并不是每个flake8警告都是可以理解的,还需要更多的说明。

我们最近偶然发现了项目,它试图用支持性的例子详细描述每一个警告。

是否有一种方法可以将PyCharm、flake8Flake8Rules组合在一起,以显示静态代码分析警告,并提供指向Flake8Rules目录的其他说明或链接?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2018-01-02 18:58:06

这绝对是可能的。

一种方法是调整flake8输出,使用命令行选项指定指向Flake8Rules目录的http(s)链接:

代码语言:javascript
复制
--format='%(path)s:%(row)d,%(col)d:%(code)s:%(text)s:https://lintlyci.github.io/Flake8Rules/rules/%(code)s.html'

问题是控制台或PyCharm输出窗口要正确地呈现链接。

幸运的是,我们可以使用插件- “好棒的控制台”作为终端,“控制台链接”用于输出窗口。

分步指令

  1. 确保在当前的Python环境中安装flake8
  2. 安装“可怕的控制台”插件:
  • 转到PyCharm Preferences -> Plugins -> Browser Repositories...
  • 查找“可怕的控制台”并安装(需要重新启动PyCharm):

  1. 将"flake8“配置为外部工具
  • 转到PyCharm Preferences -> Tools -> External Tools -> "+"
  • 为要处理的目录/路径配置到flake8的路径以及$FilePath$占位符:

演示

现在,假设我们创建了这个带有一些违规行为的test.py文件:

代码语言:javascript
复制
def f(a = 10):
  return a*10

如果我们右键单击一个test.py文件,选择External Tools -> flake8,这就是我们将要得到的输出(注意每个警告的可点击链接):

现在,无论何时有疑问,我们都可以通过链接了解有关警告的更多细节。

这只是一种方法,如果有一种更简单或更好的方法来组合这些工具和项目,我会很高兴听到的。

票数 41
EN

Stack Overflow用户

发布于 2019-11-25 15:12:28

今天,我也面临着这个问题,尽管@alecxe答案对于一个项目设置很好

如果要全局设置flake8,可以按照以下过程进行

  1. 确保在项目中安装了flake8
  2. 确保虚拟路径设置在pycharm中
  3. 将flake8配置为外部工具goto file> settings> (工具)>外部工具> '+‘

配置路径

程序- $PyInterpreterDirectory$可执行文件的路径是当前项目的flake8解释器放置的目录。

参数-指定应该检查哪些文件和文件夹,$FilePath$

工作目录-项目根目录$ContentRoot$

票数 23
EN

Stack Overflow用户

发布于 2019-09-17 12:20:14

对于所有需要:

  • 使用带有SSH的远程python解释器对文件运行
  • 谁只希望 flake8 on 更改有关git状态的文件?
  • 谁想不痛苦地传递任何其他flake8参数

若要在Pycharm中设置此类工具,请执行以下操作:

代码语言:javascript
复制
File | Settings | Tools | Remote SSH External Tools

例如,请参见下面的屏幕配置:

论据:-c "flake8 $(git status -s | grep -E '\.py$' | cut -c 4-) --max-line-lengt=120"

就我而言,最重要的是:

  1. 直接使用/bin/bash而不是flake8
  2. -c "whatever args subcommands etc I need here"填充参数部分

供参考:

注意:要让您的flake8从虚拟环境中获得,您可能需要指定完整的路径,如:/z/your_virtual_envs/bin/flake8

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48066322

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档