如何在PyCharm中将isort作为外部工具设置过滤器

2024-06-08 16:12:09 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试在PyCharm中将isort设置为外部工具。我无法设置过滤器以便文件路径是链接。在

isort的输出为:

ERROR: C:\dev\path\to\a\project\file.py Imports are incorrectly sorted.

根据docs的说法,放{}应该足够了,但它对我来说不起作用。我尝试过几种正则表达式样式,但都没有成功。在


Tags: 文件工具topathpydev路径project
1条回答
网友
1楼 · 发布于 2024-06-08 16:12:09

tl;dr使用$FILE_PATH$(?<=\.py)( |$)作为过滤器。

所以(^|[\W])(?<file>(?:\p{Alpha}\:|/)[0-9 a-z_A-Z\-\\./]+)(?<=\.py)是regexp用于$FILE_PATH。来源:https://github.com/JetBrains/intellij-community/blob/d29c4fa1a73e03b852353186d792540150336b9f/platform/lang-api/src/com/intellij/execution/filters/RegexpFilter.java#L39 你看它是怎么在里面留出空间的吗?在

这意味着它将抓取C:\dev\path\to\a\project\file.py Imports are incorrectly sorted.,并且由于它没有指向一个真正的文件,所以不会被转换成链接。在

因此,您可以将isort输出格式修改为具有清晰文件路径边界的格式,或者在regexp中使用更为奇特的方式,如肯定查找,这将使您的过滤器如下所示: $FILE_PATH$(?<=\.py)( |$)

对于测试java regexp,如果提供的过滤器不能满足您的特定需要,可以使用https://www.freeformatter.com/java-regex-tester.html。在

相关问题 更多 >