如何在Eclipse中集成pep8.py?

时间:2008-12-30 10:39:54

标签: python eclipse pydev pep8

一点背景:

  • PEP 8 Python代码样式指南。它包含所有python程序员应遵循的约定。
  • 根据PEP 8,
  • pep8.py是一个(非常有用的)脚本,用于检查给定python脚本的代码格式。
  • Eclipse是一个很棒的IDE。使用Pydev扩展名,可用于开发Python

我在编写脚本时手动运行pep8.py,但是对于更大的项目,我更喜欢使用Eclipse。 在Eclipse / Pydev中集成pep8.py非常有用,因此它可以在项目的所有文件中自动运行,并指向包含警告的行。 也许有一种明显的方法可以做到,但我还没有找到它。

问题是:如何在Eclipse中集成pep8.py?

6 个答案:

答案 0 :(得分:88)

从PyDev 2.3.0开始,pep8默认集成在PyDev中,甚至还附带默认版本。

打开窗口>首

必须在PyDev中启用>编辑>代码分析> pep8.py

错误/警告应显示为标记(与常规代码分析中的其他内容一样)。

如果未分析文件,请参阅https://stackoverflow.com/a/31001619/832230

答案 1 :(得分:26)

我不知道如何将它整合到整个项目中,但我已将其用作分析单个文件的外部工具。

请注意,pycodestyle包是pep8包的官方替代品,并且是this answer包的较新版本。要安装它,请运行:

$ sudo pip install --upgrade pycodestyle

接下来,在Eclipse中:

  1. 选择运行外部工具 - 外部工具配置...
  2. 选择程序根节点。
  3. 新启动配置按钮。
  4. 为您的启动配置输入名称。我使用pycodestyle
  5. 填写以下字段:

    位置 - ${system_path:pycodestyle}

    工作目录 - ${container_loc}

    参数 - "${resource_name}"(这使用当前有效的文件。)

  6. 转到常用标签,确认已选中分配控制台复选框。

    此方法的一个好处是您可以使用该软件包的最新版本,并且不限于PyDev附带的旧版本。如果您对以类似方式设置pylint感到好奇,请参阅{{3}}。

答案 2 :(得分:12)

  1. 打开Eclipse
  2. 转到“帮助”并选择“安装新软件”
  3. 单击“添加”按钮,将出现“添加存储库”对话框
  4. 您可以使用自己喜欢的任何名称。 (我用过PyDev)
  5. 对于该位置,请输入“http://pydev.org/updates”
  6. 点击确定。
  7. 您现在正在安装中。等待它完成。
  8. 安装完成后,关闭Eclipse并再次打开它。
  9. 现在你的Eclipse中安装了PyDev,转到Window-> Preferences
  10. 选择PyDev->编辑器 - >代码分析
  11. 转到pep8.py标签
  12. 选择单选按钮进行警告,然后单击“确定”。
  13. 就是这样。您的Eclipse IDE现在已与PEP8集成。 要自动运行pep8.py,请右键单击项目编辑器。选择PyDev并单击“代码分析”。在工作区的“问题”选项卡中,您将看到警告指向您在PEP8中违规的行(如果您违反了该行)。

答案 3 :(得分:9)

代码分析:

在Eclipse( PyDev )中,如果你想使用pep8样式进行代码分析,那么

转到:Windows - >偏好 - > PyDev - >编辑 - >代码分析 - > pep8.py 标签,然后选择警告,点击“应用”和“确定”按钮。

在你的python代码中,如果你验证pep8编码风格,它会给你警告

自动代码格式化:

在Eclipse( PyDev )中,如果你想使用pep8样式自动格式化 python代码,那么

转到:Windows - >偏好 - > PyDev - >编辑 - >代码风格 - >代码格式化程序 - >单击复选框(使用autopep8.py进行控制台格式化?)单击“应用”和“确定”按钮。

如果您想增加行长度(pep8默认值为79),请使用autopep8.py,如果将最大长度设置为150,则可以设置参数类型 --max-line-length=150

如果按自动格式快捷键( Ctrl + Shift + f ),它会自动格式化您的python代码,如pep8样式

答案 4 :(得分:6)

这似乎还没有完全融入Pydev。

正如this post中所述,

  

[它]需要更改pydev中的代码 - 灵活的选项是添加首选项以让用户选择他想要匹配的模式来创建超链接(并说明匹配中的哪个组是行和哪个一个是文件)...

     

或者,您可以尝试使用:org.python.pydev.debug.ui.PythonConsoleLineTracker进行硬编码(应该很容易掌握)。

仅仅是request does exist,但它在创作1年后似乎仍然开放......

答案 5 :(得分:-1)

你没有:)相反,你利用与PyLint的良好集成,并配置PyLint来检查PEP8检查的所有内容。见How to configure PyLint to check all things PEP8 checks?