Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.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
为Vim完成的叮当声_Vim_Clang - Fatal编程技术网

为Vim完成的叮当声

为Vim完成的叮当声,vim,clang,Vim,Clang,我将clangu_complete.vim复制到插件中,但当我在某个变量后键入时,它会显示: 找不到模式 我搜索了这个问题,有人说我应该配置g:clang\u complete\u auto:和g:clang\u complete\u copen:。如何执行此操作?要配置Vim,必须查找或创建.vimrc文件: $vim~/.vimrc 然后输入: let g:clang_complete_copen = 1 尝试打开一个示例文件 vim /tmp/sample.cpp 然后输入一些cpp代

我将
clangu_complete.vim
复制到插件中,但当我在某个变量后键入
时,它会显示:

找不到模式


我搜索了这个问题,有人说我应该配置
g:clang\u complete\u auto:
g:clang\u complete\u copen:
。如何执行此操作?

要配置Vim,必须查找或创建
.vimrc
文件:

$vim~/.vimrc

然后输入:

let g:clang_complete_copen = 1

尝试打开一个示例文件

vim /tmp/sample.cpp
然后输入一些cpp代码

#include <iostream>

int main() {
  std:: // <-- this should complete
}

。。。但是在这个问题报告中,有人建议您可能需要更多的文件(其他文件在git repo中)。

您是否尝试在Vim之外通过在命令行上显式调用Clang来编译代码

我的代码也有同样的问题,但由于使用了MPI库(mpich2),Clang无法编译我的代码。在您的案例中,可能是类似的问题导致了Clang失败?在我的例子中,如果删除MPI依赖项,一切都会正常工作,例如:

#include <iostream>
#include <string>

int main() {
    std::string myString("test string");
    std::cout << myString.size() << std::endl; // After typing the dot, I get a list of std::string methods
}
#包括
#包括
int main(){
std::string myString(“测试字符串”);

std::cout我也遇到了同样的问题,并通过在我的.vimrc中添加以下内容来解决它

let g:clang_user_options='|| exit 0'

昨天,我在Cygwin上使用了
clang 3.0版(tags/RELEASE\u 30/final)
,以及在Windows上使用和从trunk上签出的版本(通常是稳定的,正如我所读到的)并使用Visual Studio 2010构建了以下内容:

" clang_complete
let g:clang_complete_auto = 0
let g:clang_complete_copen = 1
" :h clang_complete-auto_user_options
if has('win32unix') " Cygwin
       " Using libclang requires a Vim built with +python
       let g:clang_use_library = 1
       " Mit der Option "gcc" kriege ich Fehler.
       " Remove "gcc" option as it causes errors.
       let g:clang_auto_user_options='path, .clang_complete'
elseif has('win32') " Windows
       let g:clang_auto_user_options='path, .clang_complete'
       let g:clang_use_library = 1
       let g:clang_library_path='D:\Sourcen\LLVM\build\bin\Debug'
endif
请注意,Windows版本可能会偶尔出现断言失败,但工作正常,尽管与Cygwin版本不完全相同。我猜这与使用MSVC和GCC头文件有关


Cygwin版本有一个初始的
错误:释放解锁锁
,但它无论如何都能工作。

@dalibocai你能用一个只有一个文件的小项目进行测试吗?你有其他插件吗?我在std::string上测试它,但它不工作。我已经删除了所有的omni完成文件。我测试了clang++,它工作得很好。相关:q从什么时候开始关于被认为离题的编辑的评论?
" clang_complete
let g:clang_complete_auto = 0
let g:clang_complete_copen = 1
" :h clang_complete-auto_user_options
if has('win32unix') " Cygwin
       " Using libclang requires a Vim built with +python
       let g:clang_use_library = 1
       " Mit der Option "gcc" kriege ich Fehler.
       " Remove "gcc" option as it causes errors.
       let g:clang_auto_user_options='path, .clang_complete'
elseif has('win32') " Windows
       let g:clang_auto_user_options='path, .clang_complete'
       let g:clang_use_library = 1
       let g:clang_library_path='D:\Sourcen\LLVM\build\bin\Debug'
endif