gpt4 book ai didi

emacs - 如何将ctags格式文件转换为etags格式文件?

转载 作者:行者123 更新时间:2023-12-05 07:11:00 25 4
gpt4 key购买 nike

我有一个 ctags 生成的文件,想在 Emacs 中使用它。它不是使用 ctags 生成的(我知道 ctags 有一个创建 etags 文件的开关)。

最佳答案

转换可能是不可能的,因为标签文件没有 TAGS 文件所需的足够信息,例如名称的字节偏移量。相反,如果满足某些条件,您可以从标签文件重新生成一个 TAGS 文件。

作为 Universal ctags 软件包的一部分(或包含在 Universal ctags 源代码树中)的最新版本的 readtags 命令可能对您有所帮助。最新版本的 readtags 有 -F 选项。需要该选项才能将此答案应用于您的问题。

如果您拥有的标签文件格式遵循 https://docs.ctags.io/en/latest/man/tags.5.html 中解释的语法, 最新版本的 readtags ( https://docs.ctags.io/en/latest/man/readtags.1.html ) 可以提取所有源文件名:

$ readtags  -F '(list $input "\n")' -t ~/.citre/upstream-linux.tags -l | sort -u > input-file.list

然后你可以将 input-file.list 传递给像 etags 或 ctags 这样的 TAGS 文件生成器:

$ cat input-file.list | xargs etags -a

$ ctags -L input-file.list -e 

您可以简化步骤:

$ readtags  -F '(list $input "\n")' -t ~/.citre/upstream-linux.tags -l | sort -u | xargs etags -a

$ readtags  -F '(list $input "\n")' -t ~/.citre/upstream-linux.tags -l | sort -u | ctags -L - -e

etags(或 ctags)必须支持 input-file.list 中列出的文件中使用的语言。 etags --helpctags --list-languages 列出支持的语言。

关于emacs - 如何将ctags格式文件转换为etags格式文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60971354/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com