在Windows的\ Downloads文件夹中提取了Exuberant Ctags的“ ctags58.zip”归档文件,然后将此命令添加到vimrc文件中:
let $PATH .= ';C:\Users\USR\Downloads\ctags58'
:!mkdir C:\Users\USR\vimfiles\tags
在Vim (文本编辑器)中使用命令创建文件夹后,为什么以下以下命令无法正常工作:
:!ctags --recurse=no --sort=yes --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++ -f C:\Users\USR\vimfiles\tags\cpp C:\Users\USR\Projects\PROJ\include
和:
:!ctags --sort=yes --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++ -f C:\Users\USR\vimfiles\tags\cpp C:\Users\USR\Projects\PROJ\include
这些命令只是生成标记文件,而没有标记\ include目录中的任何文件。这是他们的完整资料:
!_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/
!_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/
!_TAG_PROGRAM_AUTHOR Darren Hiebert /[email protected]/
!_TAG_PROGRAM_NAME Exuberant Ctags //
!_TAG_PROGRAM_URL http://ctags.sourceforge.net /official site/
!_TAG_PROGRAM_VERSION 5.8 //
我想要的是为\ include目录中的\ include子目录上的所有C ++文件生成一个标记文件。以下命令正在运行,但正在所有子目录上进行处理:
:!ctags -R --sort=yes --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++ -f C:\Users\USR\vimfiles\tags\cpp C:\Users\USR\Projects\PROJ\include
请注意,该路径C:\Users\USR\Projects\PROJ\include
已存在。
--exclude
ctags的选项可用于排除名称与模式匹配或文件中列出的文件。
如果您根本不想查看任何子目录,请不要使用-R
(--recurse
)选项。然后,您必须列出要处理的文件(而不是包含它们的目录)。使用通配符可以轻松完成此操作:例如,处理当前目录中的所有文件ctags *
。如果只想包含具有特定文件扩展名的文件,则应使用适当的通配符模式;例如,*.cc
或*.cxx
用于C ++文件。看来您没有这样做,只是在命名包含文件的目录。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句