【发布时间】:2017-10-30 09:10:11
【问题描述】:
我在 Linux 中处理 c 代码库。我使用 perforce 作为源代码存储库。我一直在使用 ctags,它工作正常。但是最近当在某个符号中按 ctrl ] 时,我得到以下错误。我删除了标签文件并重新创建了标签文件,但问题没有解决。关于如何解决这个问题的任何想法? E431:标签文件“标签”中的格式错误 在字节 53035586 之前
【问题讨论】:
我在 Linux 中处理 c 代码库。我使用 perforce 作为源代码存储库。我一直在使用 ctags,它工作正常。但是最近当在某个符号中按 ctrl ] 时,我得到以下错误。我删除了标签文件并重新创建了标签文件,但问题没有解决。关于如何解决这个问题的任何想法? E431:标签文件“标签”中的格式错误 在字节 53035586 之前
【问题讨论】:
如果您只是使用 ctags -R,请尝试在命令中指定 c 语言,如下所示。我遇到了同样的问题,当我在生成标签时指定c语言时,问题得到了解决。
【讨论】:
您的存储库中可能有大名称的标签。如果您可以不使用 ctags 文件中包含的内容,则可以避免此错误并使用其余 ctags。
要避免文件/文件夹,请使用此语法
**ctags -R -V --exclude=@/path/to/ctags_ignore_file ./ **
ctags_ignore_file 包含要排除的文件夹列表。您也可以使用通配符条目。
这解决了我的问题。
【讨论】:
TLDR;将export CSCOPE_EDITOR=vim 添加到~/.bashrc 并关闭您的终端窗口。
在我的例子中,将 vim 设置为 cscope 的默认编辑器解决了这个问题:
echo "export CSCOPE_EDITOR=vim" >> ~/.bashrc # Append to .bashrc
source ~/.bashrc # Load .bashrc into the current shell
之后,您还可以在项目目录中使用以下命令快速重新配置 cscope 和 ctags:
ctags -R
cscope -R
【讨论】: