我正在使用 exuberant-ctags 为我的 django 项目生成标签。在许多地方,我使用关键字参数调用函数和类。
$ cat models.py
from django.db import models
class Foo(models.Model):
bar = models.CharField(
help_text='The very important "bar" field',
unique=True,
max_length=100,
)
但是当 ctag 解析这些文件时,关键字参数被归类为变量声明。这会用大量虚假标签污染我的标签文件。
$ ctags -x models.py
Foo class 3 models.py class Foo(models.Model):
bar variable 5 models.py bar = models.CharField(
help_text variable 6 models.py help_text='The very important "bar" field',
max_length variable 8 models.py max_length=100,
unique variable 7 models.py unique=True,
我已经阅读了ctags文档,但我找不到任何似乎明显相关的内容。
ctag 中是否有一些可以使用的内置功能?还是我必须通过类似awk
的东西来管道标记文件以过滤掉错误的匹配?
根据此 PRctags
这似乎是一个错误: https://github.com/universal-ctags/ctags/pull/767
确保 ctags 是最新的,因为修复现已合并。
由于拉取请求涉及多行 kwargs 声明,因此可以假设将它们全部放在同一行上将"修复"问题(但很可能会使您的代码破坏 PEP8 建议(。