问题标签 [youcompleteme]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
443 浏览

c - YouCompleteMe(YCM) 不建议任何格式 (C11)

我正在尝试设置 YCM 以利用 C 中的自动完成功能。我按照手册中描述的说明进行操作。(:help YouCompleteMe) 但是它没有为我显示任何自动完成列表。我的 ycm_extra_conf.py 和调试信息中的部分标志如下所示。(ps,当我打开C文件并输入pri时,我也会发布我的当前状态(它应该建议printf或等等......)

谢谢 :)

我目前的状态

YCM 调试信息

0 投票
0 回答
1147 浏览

python - 从源代码编译的 VIM 无法协调 python,YouCompleteMe 不可用:需要使用 Python(2.6+ 或 3.3+)支持编译的 Vim

我想在 ubuntu 14.04 上设置我的 vim 以使用 YCM。按照安装说明,我意识到 14.04 上的原生 vim 不支持 YCM,因此我完全按照如何从源代码安装 vim 的说明进行操作还将 python config-dir 更改为正确的。

似乎它安装了对 python 的正确支持?我现在已经尝试了多次,但我无法让它工作。不过,当我打开 vim 时,我得到了这个错误:

0 投票
0 回答
326 浏览

vim - vim:跳回来,不要使用现有的标签?

我已经使用 youcompleteme 转到函数定义。函数定义在一个新文件中,所以 vim 打开一个新选项卡。但是当我跳回去时ctrl+o,它将当前 buf 更改为 previce 选项卡。所以,有两个相同的选项卡在vim中。我不想要这个,如何解决?

在此处输入图像描述

0 投票
1 回答
175 浏览

vim - YouCompleteme 是否只能使用 std::function 工作?否则没有功能和参数提示

我使用完整的安装指南编译了 YouCompleteMe,并加载了默认的 .ycm_extra_conf.py。但是,当我尝试创建一个 .cpp 文件并查找函数(例如 strcpy)时,只会在键入 std:: 时提示,即使我已经输入了“使用命名空间 std;”。在代码中。

我不明白为什么标准库函数不会自动完成。有谁知道我错过了什么?我还附上了我的 YcmDebugInfo。谢谢!

在此处输入图像描述 YcmDebugInfo

0 投票
1 回答
297 浏览

c++ - VIM 的 YouCompleteMe 插件 - 如何支持其他库方法的自动补全?(例如openmpi)

YCM 自动完成并突出显示 C++ 标准库中的错误。但是,如果我下载另一个库(例如 OpenMPI)并编写导入的代码,<mpi.h>我可以使用 mpicc 编译它,但 YCM 告诉我<mpi.h>找不到文件,并且它提供的所有函数似乎都被 YCM 标记为无效。有没有办法来解决这个问题 ?我应该对ycm_extra_conf_py文件进行哪些更改以支持其他下载的库?

0 投票
1 回答
5030 浏览

vim - YouCompleteMe(vim 插件)GoToDefinition 不起作用

这是~/.vimrc相关的部分ycm
此外,flagsin .ycm_extra_conf.pycontains 结果echo | gcc -std=c++11 -v -E -x c++ -指的是C-family.

  • 问题
    虽然auto-complete工作正常,GoToDefinition但根本不起作用。
    (这里的意思works是,ycm可以识别项目中的本地头文件。)
    根据注释GoToDefinition仅适用于当前的translation unit.
    但是,GoToDefinition仅适用于我正在编辑的文件。

  • 我尝试了什么:放弃让.ycm_extra_conf.py全球

    1. 复制.ycm_extra_conf.py到项目顶部并g:ycm_global_ycm_extra_conf~/.vimrc.
    2. YcmForceCompileAndDiagnostics
    3. 文件中的签final_flagsFlagsForFile功能。.ycm_extra_conf.py
    4. final_flags是这样的。
      ['-Wall', '-Wextra', '-Werror', '-Wc++98-compat', '-Wno-long-long', '-Wno-variadic-macros', '-fexceptions', '-DN DEBUG', '-DUSE_CLANG_COMPLETER', '-std=c++11', '-x', 'c++', '-isystem', '/home/illuxic/Redbase/../BoostParts', ' -isystem', '/System/Library/Frameworks/Python.framework/Headers', '-isystem', '/home/illuxic/Redbase/../llvm/inc lude', '-isystem', '/home/illuxic/Redbase/../llvm/tools/clang/include', '-I', '/home/illuxic/Redbase/.', '-I', ' /home/illuxic/Redbase/./ClangCompleter', '-isystem', '/home/illuxic/Redbase/./tests/gmock/gtest', '-isystem', '/ home/illuxic/Redbase/./tests/gmock/gtest/include', '-isystem', '/home/illuxic/Redbase/./tests/gmock', '-isystem' , '/home/illuxic/Redbase/./tests/gmock/include', '-isystem', '/usr/include/c++/5', '-isystem', '/usr/include/x86 _64-linux-gnu/c++/5', '-isystem', '/usr/include/c++/5/backward', '-isystem', '/usr/lib/gcc/x86_64-linux-gnu/5/in clude', '-isystem', '/usr/local/include', '-isystem', '/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed', '-isystem ', '/usr/include/x86_64-linux-gnu', '-isystem', '/usr/include']
    5. GoToDefinition仍然给我' RuntimeError: Can't jump to definition.'

我怎样才能GoToDefinition工作?
它不仅不能识别间接包含的头文件,也不能识别直接包含的头文件。

0 投票
1 回答
765 浏览

c++ - 使用 scons 和 g++ 编译器的项目的 vim 插件 youcompleteme

我刚刚在 CentOS 7 上安装了 YCM。我现在正在为我的项目生成文件的“.ycm_extra_conf.py”等效文件,它是 c++ 文件的嵌套目录,使用 Scons 构建系统和 g++(使用 -std =c++98) 来编译 c++ 文件。我有几个问题:

  1. “.ycm_extra_conf.py”文件中的“flags”变量的内容是否是传递给项目编译器的标志,在我的情况下是 scons 构建系统的 g++ 编译器?
  2. 如果对问题 1 的回答是肯定的,那么当 YCM 编译文件时,这些相同的标志是否会传递给 clang?如果是这样,YCM 是在编译还是在技术上处理项目中的 c++ 文件以用于语义完成?
  3. 如果对问题 2 的回答是肯定的,那么我猜我在“flags”变量中声明的标志不适用于 clang,因为它们适用于 g++。我应该将标志转换/映射到铿锵声吗?
  4. YCM 是否使用 clang 仅前端编译文件以生成用于语义完成的 AST?

很抱歉这些幼稚的问题,我对 YCM 很陌生。任何帮助/指导将不胜感激。

问候并感谢你,艾哈迈德。

0 投票
1 回答
32 浏览

vim - vim a la sublime 上“模板”的简单补全(可能使用 YouCompleteMe )?

我不明白如何使用 YouCompleteMe 创建漂亮的模板,就像我以前在 sublime 上拥有的东西一样。

我想实现的两个基本示例:

键入“日志”正在完成

键入“fori”正在完成

所以基本上扩展模板然后让我快速填充空间并最终得到最后一个“提示”。

据我了解 YouCompleteMe 可以做任何你需要的事情,包括mocha latemilkshake,但我仍然不知道如何做这个简单的事情。

0 投票
0 回答
302 浏览

python - Youcompleteme 在 debian 不稳定时停止工作

在将 vim-nox 从 8.0.0095-1 更新到 8.0.0134-1 和一些 python 包之后,youcompleteme 停止工作并在我启动 vim 时抛出错误。

YcmDebugInfo 的输出:

看起来 ycmd 和 vim 对应的 youcompleteme 之间的通信不再正常工作了。debian 不稳定的 vim8 使用 python 3,而 ycmd 使用 python 2.7 启动。ycmd 和 youcompleteme 的软件包版本是匹配的并且最近没有更改(它使用相同的版本)。有人让你完成了 debian 不稳定的最新更新吗?

0 投票
2 回答
1078 浏览

c++ - YouCompleteMe 不是自动完成功能

YMC 并没有按照我期望的方式工作。它适用的唯一实例是当对象上有范围运算符 (std::) 和点运算符时。但是,它不适用于函数。我正在使用 SDL 库,并且没有任何函数或结构自动完成。我总是要打出来。有任何解决这个问题的方法吗?