Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何使PyDev自动格式化为每行的最大字符数?_Python_Eclipse_Formatting_Pydev - Fatal编程技术网

Python 如何使PyDev自动格式化为每行的最大字符数?

Python 如何使PyDev自动格式化为每行的最大字符数?,python,eclipse,formatting,pydev,Python,Eclipse,Formatting,Pydev,我正在Eclipse中使用PyDev进行Python编程 是否可以使PyDev自动格式化我的代码,以限制单行上的最大字符数?使用标准PyDev 这个选项似乎只在Eclipse的Java编辑器中可用 Java编辑器允许您为代码格式化程序创建“概要文件”,而PyDev对代码格式化程序的选项非常有限 然而, 你可以破解这个PythonTidy.py是一个很棒的脚本,它可以清理Python代码,使其符合PEP8约定,并且可以使用您自己的设置进行调整 PythonTidy(代码清理和格式化) 获取()Py

我正在Eclipse中使用PyDev进行Python编程

是否可以使PyDev自动格式化我的代码,以限制单行上的最大字符数?

使用标准PyDev 这个选项似乎只在Eclipse的Java编辑器中可用

Java编辑器允许您为代码格式化程序创建“概要文件”,而PyDev对代码格式化程序的选项非常有限

然而, 你可以破解这个
PythonTidy.py
是一个很棒的脚本,它可以清理Python代码,使其符合PEP8约定,并且可以使用您自己的设置进行调整

PythonTidy(代码清理和格式化) 获取()PythonTidy的源代码

您将在文件中看到,在代码的开头和注释之后,定义了许多设置

第一个是
colu LIMIT
,其默认值设置为
72
。现在,您可以使用PythonTidy以您想要的方式格式化代码

与PyDev的集成 现在,您必须使用PyDev的格式来实现这一点。这将比我更好地解释它,但我仍将总结以下步骤:

  • 在PyDev的编辑器(PyEdit)和PythonTidy之间编写Jython接口。这个博客的作者已经在上面的链接或404链接中的公共域中编写了一个包装器脚本
  • 将此文件保存到您想要的任何位置,文件名为
    pyedit\u pythontidy.py
    ,文件名为
    pythontidy.py
  • 配置PyDev以使用此脚本作为其代码格式化程序。您可以在首选项>PyDev>编写PyDev脚本中执行此操作

    • 注#1:我真的建议阅读原文,以便更好地理解

    • 注意#2:包装器脚本作者未实现代码块格式化,因此这意味着您只能格式化完整文件。这应该不难实现,由您决定

    • 注#3:PyDev集成部分的所有学分


我不是很确定,但我认为自动格式化算法尊重在“首选项”>“编辑器”>“文本编辑器”中设置的
打印边距
值。我将测试它并告诉您,这是错误的,PyDev只对
import
语句执行此操作(将其拆分为多行语句以尊重打印边距),我遵循了博客和您的步骤。要么它不工作,要么我不知道如何使用它。。。我应该如何对整个文件的格式进行排序?crtl+shift+F(所选文件)一点也不改变。谢谢您的Eclipse错误日志中有什么有用的信息吗?(另外,在
Scripting PyDev
对话框中选中与错误日志相关的两个复选框)根本没有有趣的日志,现在我将运行Pythontidy脚本,而不在Eclipse中进行真正的集成。无论如何谢谢你