如何为所有C++;无法';不能由Ctags处理? 我如何为微软VisualC++ >强>的所有C++头文件生成标签文件,如果繁杂的CTAGS不能在包含文件夹中处理? 例如微软VisualC++的头文件包含文件夹的路径是:“C:\程序文件\微软Visual Studio 11 \VC包含\ 如何生成包含文件夹的所有C++文件的标签文件? 以及如何生成包含文件夹的所有C++文件 在它的子目录上
我已经试过这个命令了:如何为所有C++;无法';不能由Ctags处理? 我如何为微软VisualC++ >强>的所有C++头文件生成标签文件,如果繁杂的CTAGS不能在包含文件夹中处理? 例如微软VisualC++的头文件包含文件夹的路径是:“C:\程序文件\微软Visual Studio 11 \VC包含\ 如何生成包含文件夹的所有C++文件的标签文件? 以及如何生成包含文件夹的所有C++文件 在它的子目录上,c++,windows,visual-studio,visual-c++,vim,C++,Windows,Visual Studio,Visual C++,Vim,我已经试过这个命令了: :!ctags -R --sort=yes --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++ -f C:\Users\USR\vimfiles\tags\msvc C:\Program\ Files\Microsoft\ Visual\ Studio\ 11.0\VC\include :!ctags -R --sort=yes --c++-kinds=+p --fields=+iaS --extra
:!ctags -R --sort=yes --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++ -f C:\Users\USR\vimfiles\tags\msvc C:\Program\ Files\Microsoft\ Visual\ Studio\ 11.0\VC\include
:!ctags -R --sort=yes --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++ -f C:\Users\USR\vimfiles\tags\msvc C:\Program Files\Microsoft Visual Studio 11.0\VC\include
和命令:
:!ctags -R --sort=yes --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++ -f C:\Users\USR\vimfiles\tags\msvc C:\Program\ Files\Microsoft\ Visual\ Studio\ 11.0\VC\include
:!ctags -R --sort=yes --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++ -f C:\Users\USR\vimfiles\tags\msvc C:\Program Files\Microsoft Visual Studio 11.0\VC\include
但是这些只是创建一个标记文件“msvc”,而没有标记\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 /dhiebert@users.sourceforge.net/
!_TAG_PROGRAM_NAME Exuberant Ctags //
!_TAG_PROGRAM_URL http://ctags.sourceforge.net /official site/
!_TAG_PROGRAM_VERSION 5.8 //
但我很确定,如果正在处理的文件夹位于Windows用户的
$HOME
上,例如位于路径“C:\Users\USR”下,那么前面的这两个命令将起作用。我很确定这与您试图处理的文件夹路径中的空格有关。尝试在其周围加上双引号,即:!ctags-R--sort=yes--c++-classes=+p--fields=+iaS--extra=+q--language force=c++-f c:\Users\USR\vimfiles\tags\msvc“c:\Program Files\Microsoft Visual Studio 11.0\VC\include”
。用反斜杠转义空格不起作用,因为Windows使用反斜杠作为路径分隔符。你能解释一下这个问题和你在上的其他问题之间的区别吗?你能给我们一个例子说明该目录中有哪些文件吗?@GavinSmith这里我们在路径“C:\Program files”下处理另一种是在Windows用户的路径“C:\Usvs\UR”下。@ RoMINL有VisualC++的文件夹和一些头文件,包括IOFROW、ISTRAMAM和OFSUW。为什么我在测试中看到的不是生成的标签文件中的一个C++文件,比如Test.java标签?CTAGS会读取并处理它所能处理的文件。您需要使用--exclude=*.java
来不处理java文件,其他文件类型也需要使用类似的方法。C++ C++语言语言C++ =代码/代码>告诉CTAGS将每个文件当作C++来对待(与C++文件完全不同),java语法足够接近它可以创建几个标签。<代码>语言力= c++ >代码>是我解决的问题。它在OP中提到,但是看到它让我觉得这就是标记STD C++头文件(<代码> <代码> >)所需要的。