c/c++ 补全

没有 我都按文档来的 估计mac 编译器 llvm 不行

cquery 对软件的版本要求不是太高啊,看下电脑里下面这些软件的版本对不对,如果编译用的 gcc 就看 gcc 的版本,clang 就看 clang 的版本

  • CMake 3.1 or higher
  • C++ Compiler with C++14 support:
    • Clang 3.6 or higher
    • GCC 5 or higher

我升级一下gcc看看吧

i know ~ change llvm to gcc4.9 already

同学还是要多看论坛,感觉一个月里大家都在讨论改进lsp,你还在研究过时的tags系统,这不…白折腾了…

1 个赞

新手入门哈 在短时间内速成了lisp 看了大量帖子 文档 教程 现在基本都折腾好了 就剩下这个智能提示了。。

用的 flycheck gtags projectile company-mode 其他都是些小玩意了

现在在尝试 lsp-mode 结果还编译报错

这玩意搞好之后 是不是 company-mode 和 flycheck 可以去掉了?

不是,要留着

company是用来弹小窗的,没有这东西怎么弹?

好的 我继续折腾了 cquery 链接错误。。解决中

实在解决不了了 发帖了。。。这编译错误要命

看看有没有其他懂的人吧,我对 C++ 和 cmake 也不是太熟

shared_timed_mutex是c++14引入的,所以感觉是编译器版本过低的可能性比较大

应该就是这个问题了 llvm可能不支持 我等下换成 gcc5.5 试试看

Error from the Language Server: /root/work/boost_demo/asio/main.cpp is being indexed. (Server Not Initialized)

基本设置完了 也能用了 感觉还不错 就是启动的时候

现在在设置函数跳转了。。

有个问题 是不是 每个项目我都要先用cmake 生成一下 compli-json 然后cquary 才能正常工作

不需要吧,第一次打开一个 C 或者 C++ 文件的时候 minibuffer 会弹出几个选项让你选择,选择一下就好了

嗯嗯 好的 我用了 lsp-ui 函数跳转要用什么函数呢 怎么感觉有的不能正常跳转 有点诡异的是 有时候我打开项目cquary工作 有时候不工作

xref-find-definitions 默认按键 M-.

xref-find-references 默认按键 M-?

xref-find-apropos 默认按键 C-M-.

lsp-ui-peek-find-references 安装了 lsp-ui 的话可以试试这个函数

效果如下:

第一次打開的菜單是workspace folders。很多language servers用不着。我自己設置(setq lsp-auto-guess-root t)防止心煩

ycmd的優勢是跨語言支援,以及client-side filtering and sorting(第一次接受數據量大,之後在client-side過濾快) irony用一個自定義序列化協議,比LSP用的JSON-RPC精簡很多,可能也會感覺平滑。

我現在之所以還在用:

(def-package! company-lsp
  :load-path "~/Dev/Emacs/company-lsp"
  :after company
  :init
  (setq company-transformers nil company-lsp-cache-candidates nil)
  )

是因爲client-side company過濾規則讓人不滿意。

(require 'lsp-clients)

Improve session folder handling and added events for handling them by yyoncho · Pull Request #544 · emacs-lsp/lsp-mode · GitHub 合併後lsp-auto-require-clients t不需要了。

(require 'lsp)

有人建議改用(require 'lsp-mode),把lsp.el移動到lsp-mode.el Broken with use-package · Issue #558 · emacs-lsp/lsp-mode · GitHub

xref-find-definitions 默认按键 M-.

xref-find-references 默认按键 M-?

xref-find-apropos 默认按键 C-M-.

這裏我不同意eglot作者的,我覺得沒必要把這些功能混在xref.el裏。可以考慮用 Add lsp-find-{definition,references} and rename lsp-goto-{,type-}implementation by MaskRay · Pull Request #550 · emacs-lsp/lsp-mode · GitHub 裏的lsp-find-{definition,references,type-definition,implementation}

(setq lsp-prefer-flymake nil)

flymake主要輸在沒有flymake-posframe,需要有人做一個……

cc-mode會自動加flymake-cc,我現在在mode hook裏禁用:

(setq flymake-diagnostic-functions '(lsp--flymake-backend t))

(push 'company-lsp company-backends)

過時。lsp-auto-configure(預設t)會自動配置

2 个赞

不知道怎么了 进目录 打开文件 都没有菜单 然后cquary又不工作了。。 一下有一下没有。。。我真的是醉了

我要怎么样才能判断 cquary 这玩意是不是正常工作呢 lsp-mode lsp-ui 都启用了。。

ximage

这个文件 生成在我的项目里 还影响编译

直接用VS多好

1 个赞