Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何为所有C++;无法';不能由Ctags处理? 我如何为微软VisualC++ >强>的所有C++头文件生成标签文件,如果繁杂的CTAGS不能在包含文件夹中处理? 例如微软VisualC++的头文件包含文件夹的路径是:“C:\程序文件\微软Visual Studio 11 \VC包含\ 如何生成包含文件夹的所有C++文件的标签文件? 以及如何生成包含文件夹的所有C++文件 在它的子目录上_C++_Windows_Visual Studio_Visual C++_Vim - Fatal编程技术网

如何为所有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++头文件(<代码> <代码> >)所需要的。