neoclide / coc.nvim

Nodejs extension host for vim & neovim, load extensions like VSCode and host language servers.
Other
24.33k stars 956 forks source link

clangd --query-driver argument doesn't work #1486

Closed AndreasAZiegler closed 4 years ago

AndreasAZiegler commented 4 years ago

Result from CocInfo

## versions

vim version: NVIM v0.4.3
node version: v13.7.0
coc.nvim version: 0.0.74-6700e7468d
term: rxvt-unicode-256color
platform: linux

## Messages

## Output channel: git

Looking for git in: git
> git rev-parse --show-toplevel
resolved root: /home/andreasziegler/mt-robot/chroot/mtrsys-core
resolved root: /home/andreasziegler/mt-robot/chroot/mtrsys-core
> git symbolic-ref --short HEAD
> git diff --name-status
> git diff --staged --name-status
> git ls-files --others --exclude-standard
resolved root: /home/andreasziegler/mt-robot/chroot/mtrsys-core
resolved root: /home/andreasziegler/mt-robot/chroot/mtrsys-core
> git symbolic-ref --short HEAD
> git diff --name-status
> git diff --staged --name-status
> git ls-files --others --exclude-standard
resolved root: /home/andreasziegler/mt-robot/chroot/mtrsys-core
> git ls-files -- core/mt_navigator/src/mt_navtrp/VelocityRolloutPlanner.cpp
resolved root: /home/andreasziegler/mt-robot/chroot/mtrsys-core
> git symbolic-ref --short HEAD
> git --no-pager show :core/mt_navigator/src/mt_navtrp/VelocityRolloutPlanner.cpp
> git diff --name-status
> git diff --staged --name-status
> git ls-files --others --exclude-standard
> git diff /home/andreasziegler/mt-robot/chroot/mtrsys-core/core/mt_navigator/src/mt_navtrp/VelocityRolloutPlanner.cpp
resolved root: /home/andreasziegler/mt-robot/chroot/mtrsys-core
resolved root: /home/andreasziegler/mt-robot/chroot/mtrsys-core
> git symbolic-ref --short HEAD
> git ls-files -- core/mt_navigator/src/mt_navtrp/VelocityRolloutPlanner.cpp
> git --no-pager show :core/mt_navigator/src/mt_navtrp/VelocityRolloutPlanner.cpp
> git diff --name-status
> git diff --staged --name-status
> git ls-files --others --exclude-standard
> git diff /home/andreasziegler/mt-robot/chroot/mtrsys-core/core/mt_navigator/src/mt_navtrp/VelocityRolloutPlanner.cpp

## Output channel: languageserver.clangd

clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:37 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:37 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:37 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:37 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:37 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:37 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:37 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:37 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:37 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:37 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:37 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:37 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:37 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:37 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:37 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:37 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:37 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:37 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:37 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:37 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:37 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:37 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:37 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:37 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:37 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:37 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:37 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:37 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:37 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:37 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:37 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:37 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:37 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:37 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:37 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:37 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:37 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:37 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:37 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:38 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:38 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:38 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:38 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:38 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:38 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:38 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:38 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:38 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:38 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:38 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:38 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:38 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:38 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:38 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:38 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:38 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:38 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:38 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:38 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:38 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:38 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:38 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:38 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:38 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:38 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:38 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:38 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:38 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:38 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:38 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:38 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:38 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:39 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:39 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:39 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:39 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:39 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:39 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:39 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:39 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:39 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:39 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:39 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:39 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:39 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:39 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:39 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:39 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:39 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:39 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:39 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:39 PM] clangd exited with code: 1
clangd: Unknown command line argument '-–query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'.  Try: 'clangd --help'
clangd: Did you mean '  --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"'?
[Info  - 4:05:39 PM] Connection to server got closed. Server will restart.
[Error  - 4:05:39 PM] clangd exited with code: 1

Describe the bug

With this cos-settings.json:

{
  "languageserver": {
    "clangd": {
      "command": "clangd",
      "args": ["--background-index", "-–query-driver=\"/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9\""],
      "rootPatterns": ["compile_flags.txt", "compile_commands.json", ".vim/", ".git/", ".hg/"],
      "filetypes": ["c", "cpp", "objc", "objcpp"]
    },
    "julia": {
      "command": "/usr/bin/julia",
      "args" : ["--startup-file=no", "--history-file=no", "-e",
      "using LanguageServer;\n       using Pkg;\n       import StaticLint;\n       import SymbolServer;\n       env_path = dirname(Pkg.Types.Context().env.project_file);\n       debug = false;\n       server = LanguageServer.LanguageServerInstance(stdin, stdout, debug, env_path, \"\", Dict());\n       server.runlinter = true;\n       run(server);" ],
      "filetypes": ["julia"]
     }
  }

}

clangd complains that --query-driver is an unknown command (as logged in the CocInfo). But as described on this page this is a valid argument to pass clangd. Also when I manually start cland it doesnt complain.

clangd --background-index --query-driver="/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"
clangd is a language server that provides IDE-like features to editors.

It should be used via an editor plugin rather than invoked directly. For more information, see:
    https://clang.llvm.org/extra/clangd/
    https://microsoft.github.io/language-server-protocol/

clangd accepts flags on the commandline, and in the CLANGD_FLAGS environment variable.

I[16:09:14.506] clangd version 9.0.1 
I[16:09:14.506] Working directory: /home/andreasziegler/mt-robot/chroot/mtrsys-core/build
I[16:09:14.506] argv[0]: clangd
I[16:09:14.506] argv[1]: --background-index
I[16:09:14.506] argv[2]: --query-driver=/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9
I[16:09:14.506] Starting LSP over stdin/stdout

Reproduce the bug

My messy .vimrc (also used as nvim config)

  kset shell=/bin/bash

set nocompatible              " be iMproved, required
filetype off                  " required
filetype plugin on

set spell                     " Activate spell check

set runtimepath=~/.vim,$VIM/vimfiles,$VIMRUNTIME,$VIM/vimfiles/after,~/.vim/after

" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim

" map leaderkey
let mapleader="\<Space>"

call vundle#begin()
" alternatively, pass a path where Vundle should install plugins
"call vundle#begin('~/some/path/here')

" let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'

Plugin 'euclio/vim-markdown-composer'
Plugin 'lervag/vimtex'
"Plugin 'Valloric/YouCompleteMe'
Plugin 'neoclide/coc.nvim', {'branch': 'release'}
Plugin 'neomake/neomake'
"Plugin 'taketwo/vim-ros'
Plugin 'altercation/vim-colors-solarized'
Plugin 'vim-airline/vim-airline'
Plugin 'vim-airline/vim-airline-themes'
Plugin 'scrooloose/nerdtree'
Plugin 'skywind3000/asyncrun.vim'
Plugin 'dominikduda/vim_current_word'
"Plugin 'davidhalter/jedi-vim'
Plugin 'Chiel92/vim-autoformat'
Bundle 'jistr/vim-nerdtree-tabs'
Plugin 'ctrlpvim/ctrlp.vim'
"Plugin 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }
Plugin 'junegunn/fzf'
Plugin 'junegunn/fzf.vim'
Plugin 'vim-scripts/DoxygenToolkit.vim'
Plugin 'rhysd/vim-clang-format'
Plugin 'octol/vim-cpp-enhanced-highlight'
Plugin 'vim-scripts/EasyGrep'
Plugin 'zivyangll/git-blame.vim'
"Plugin 'aperezdc/vim-template.git' " c++ template supported by c-support
Plugin 'AndreasAZiegler/c-support'
Plugin 'JuliaEditorSupport/julia-vim'
Plugin 'xolox/vim-misc'
Plugin 'xolox/vim-easytags'
Plugin 'wakatime/vim-wakatime'
Plugin 'derekwyatt/vim-fswitch'

" All of your Plugins must be added before the following line
call vundle#end()            " required
filetype plugin indent on    " required

" --- General settings ---
set ruler
set number
set showcmd
set incsearch
set hlsearch
"set autochdir
syntax on

set mouse=a

set tabstop=2
set shiftwidth=2
set softtabstop=2
set smarttab
set expandtab
set rnu

" --- Coloring --
set background=light
let g:solarized_termcolors=256
colorscheme solarized

" --- Airline ---
set laststatus=2
let g:airline_detect_paste=1

let g:airline#extensions#tabline#enabled = 2
let g:airline#extensions#tabline#fnamemod = ':t'
let g:airline#extensions#tabline#left_sep = ' '
let g:airline#extensions#tabline#left_alt_sep = '|'
let g:airline#extensions#tabline#right_sep = ' '
let g:airline#extensions#tabline#right_alt_sep = '|'
let g:airline_left_sep = ' '
let g:airline_left_alt_sep = '|'
let g:airline_right_sep = ' '
let g:airline_right_alt_sep = '|'
let g:airline_theme= 'solarized'

" ----- jistr/vim-nerdtree-tabs -----
" Open/close NERDTree Tabs with \t
nmap <silent> <leader>nt :NERDTreeTabsToggle<CR>
" To have NERDTree always open on startup
"let g:nerdtree_tabs_open_on_console_startup = 1

" ----- Shortcuts for jistr/vim-nerdtree-tabs -----
noremap <F1> :NERDTreeToggle<CR>
"cnoremap n <C-R> NERDTreeToggle

set clipboard+=unnamedplus

" ---- LaTeX settings ----
set grepprg=grep\ -nH\ $*
let g:tex_flavor = "latex"

let g:Tex_DefaultTargetFormat='pdf'
let g:Tex_MultipleCompileFormats='pdf, aux'
let g:Tex_CompileRule_pdf='pdflatex -interaction=nonstopmode $*'

" ---- Set make using chroot ----
set makeprg=schroot\ -c\ mt_jessie\ make

" ---- Neomake settings ----
autocmd! BufWritePost * Neomake
let g:neomake_open_list = 2
let g:neomake_cpp_enabled_makers = ['clangtidy', 'clangcheck', 'cppcheck', 'cpplint']

" ---- youcompleteme settings ----
"let g:ycm_server_python_interpreter = 'ycmd-python'
"let g:ycm_python_binary_path = 'python3.6'
" Let clangd fully control code completion
"let g:ycm_clangd_uses_ycmd_caching = 0
" Use installed clangd, not YCM-bundled clangd which doesn't get updates.
"let g:ycm_clangd_binary_path = exepath("clangd")
"let g:ycm_clangd_args = ['-log=verbose', '-pretty']

" ---- vim-clang-format settings ----
let g:clang_format#detect_style_file = 1
" map to <Leader>cf in C++ code
autocmd FileType c,cpp,objc nnoremap <buffer><Leader>cf :<C-u>ClangFormat<CR>
autocmd FileType c,cpp,objc vnoremap <buffer><Leader>cf :ClangFormat<CR>

" ---- vimtex settings ----
"let g:vimtex_view_method = 'mupdf'
set runtimepath^=~/.vim/bundle/vimtex 

" ---- Shortcuts for GoTo ----
nnoremap <Leader>] :YcmCompleter GoTo<CR>

" ---- YcmCompleter ----
"let g:ycm_global_ycm_extra_conf = '/usr/share/ycmd/ycmd/.ycm_extra_conf.py'
"let g:ycm_autoclose_preview_window_after_completion = 1
"let g:ycm_max_diagnostics_to_display = 0

"let g:ycm_keep_logfiles = 1
"let g:ycm_log_level = 'debug'

" ---- coc.nvim ----
" if hidden is not set, TextEdit might fail.
set hidden

" Some servers have issues with backup files, see #649
set nobackup
set nowritebackup

" Better display for messages
set cmdheight=2

" You will have bad experience for diagnostic messages when it's default 4000.
set updatetime=300

" don't give |ins-completion-menu| messages.
set shortmess+=c

" always show signcolumns
set signcolumn=yes

" Use tab for trigger completion with characters ahead and navigate.
" Use command ':verbose imap <tab>' to make sure tab is not mapped by other plugin.
inoremap <silent><expr> <TAB>
      \ pumvisible() ? "\<C-n>" :
      \ <SID>check_back_space() ? "\<TAB>" :
      \ coc#refresh()
inoremap <expr><S-TAB> pumvisible() ? "\<C-p>" : "\<C-h>"

function! s:check_back_space() abort
  let col = col('.') - 1
  return !col || getline('.')[col - 1]  =~# '\s'
endfunction

" Use <c-space> to trigger completion.
inoremap <silent><expr> <c-space> coc#refresh()

" Use <cr> to confirm completion, `<C-g>u` means break undo chain at current position.
" Coc only does snippet and additional edit on confirm.
inoremap <expr> <cr> pumvisible() ? "\<C-y>" : "\<C-g>u\<CR>"
" Or use `complete_info` if your vim support it, like:
" inoremap <expr> <cr> complete_info()["selected"] != "-1" ? "\<C-y>" : "\<C-g>u\<CR>"

" Use `[g` and `]g` to navigate diagnostics
nmap <silent> [g <Plug>(coc-diagnostic-prev)
nmap <silent> ]g <Plug>(coc-diagnostic-next)

" Remap keys for gotos
nmap <silent> gd <Plug>(coc-definition)
nmap <silent> gy <Plug>(coc-type-definition)
nmap <silent> gi <Plug>(coc-implementation)
nmap <silent> gr <Plug>(coc-references)

" Use K to show documentation in preview window
nnoremap <silent> K :call <SID>show_documentation()<CR>

function! s:show_documentation()
  if (index(['vim','help'], &filetype) >= 0)
    execute 'h '.expand('<cword>')
  else
    call CocAction('doHover')
  endif
endfunction

" Highlight symbol under cursor on CursorHold
autocmd CursorHold * silent call CocActionAsync('highlight')

" Remap for rename current word
nmap <leader>rn <Plug>(coc-rename)

" Remap for format selected region
xmap <leader>f  <Plug>(coc-format-selected)
nmap <leader>f  <Plug>(coc-format-selected)

augroup mygroup
  autocmd!
  " Setup formatexpr specified filetype(s).
  autocmd FileType typescript,json setl formatexpr=CocAction('formatSelected')
  " Update signature help on jump placeholder
  autocmd User CocJumpPlaceholder call CocActionAsync('showSignatureHelp')
augroup end

" Remap for do codeAction of selected region, ex: `<leader>aap` for current paragraph
xmap <leader>a  <Plug>(coc-codeaction-selected)
nmap <leader>a  <Plug>(coc-codeaction-selected)

" Remap for do codeAction of current line
nmap <leader>ac  <Plug>(coc-codeaction)
" Fix autofix problem of current line
nmap <leader>qf  <Plug>(coc-fix-current)

" Create mappings for function text object, requires document symbols feature of languageserver.
xmap if <Plug>(coc-funcobj-i)
xmap af <Plug>(coc-funcobj-a)
omap if <Plug>(coc-funcobj-i)
omap af <Plug>(coc-funcobj-a)

" Use <TAB> for select selections ranges, needs server support, like: coc-tsserver, coc-python
nmap <silent> <TAB> <Plug>(coc-range-select)
xmap <silent> <TAB> <Plug>(coc-range-select)

" Use `:Format` to format current buffer
command! -nargs=0 Format :call CocAction('format')

" Use `:Fold` to fold current buffer
command! -nargs=? Fold :call     CocAction('fold', <f-args>)

" use `:OR` for organize import of current buffer
command! -nargs=0 OR   :call     CocAction('runCommand', 'editor.action.organizeImport')

" Add status line support, for integration with other plugin, checkout `:h coc-status`
set statusline^=%{coc#status()}%{get(b:,'coc_current_function','')}

" Using CocList
" Show all diagnostics
nnoremap <silent> <space>a  :<C-u>CocList diagnostics<cr>
" Manage extensions
nnoremap <silent> <space>e  :<C-u>CocList extensions<cr>
" Show commands
nnoremap <silent> <space>c  :<C-u>CocList commands<cr>
" Find symbol of current document
nnoremap <silent> <space>o  :<C-u>CocList outline<cr>
" Search workspace symbols
nnoremap <silent> <space>s  :<C-u>CocList -I symbols<cr>
" Do default action for next item.
nnoremap <silent> <space>j  :<C-u>CocNext<CR>
" Do default action for previous item.
nnoremap <silent> <space>k  :<C-u>CocPrev<CR>
" Resume latest coc list
nnoremap <silent> <space>p  :<C-u>CocListResume<CR>

" ---- vim-autoformat ----
let g:autoformat_verbosemode=1
let g:autoformat_autoindent = 0
let g:autoformat_retab = 0
let g:autoformat_remove_trailing_spaces = 0
let g:formatdef_clang_format = '"/usr/local/bin/clang-format --style=file"'
let g:formatters_cpp = ['clang_format']

" ---- Shortcuts for vim-autoformat ----
noremap <F2> :Autoformat<CR>
"cnoremap s <C-R> Autoformat

" ---- fzf ----
" This is the default extra key bindings
let g:fzf_action = {
  \ 'ctrl-t': 'tab split',
  \ 'ctrl-x': 'split',
  \ 'ctrl-v': 'vsplit' }

" Default fzf layout
" - down / up / left / right
let g:fzf_layout = { 'down': '~40%' }

" In Neovim, you can set up fzf window using a Vim command
let g:fzf_layout = { 'window': 'enew' }
let g:fzf_layout = { 'window': '-tabnew' }
let g:fzf_layout = { 'window': '10split enew' }

" Customize fzf colors to match your color scheme
let g:fzf_colors =
\ { 'fg':      ['fg', 'Normal'],
  \ 'bg':      ['bg', 'Normal'],
  \ 'hl':      ['fg', 'Comment'],
  \ 'fg+':     ['fg', 'CursorLine', 'CursorColumn', 'Normal'],
  \ 'bg+':     ['bg', 'CursorLine', 'CursorColumn'],
  \ 'hl+':     ['fg', 'Statement'],
  \ 'info':    ['fg', 'PreProc'],
  \ 'border':  ['fg', 'Ignore'],
  \ 'prompt':  ['fg', 'Conditional'],
  \ 'pointer': ['fg', 'Exception'],
  \ 'marker':  ['fg', 'Keyword'],
  \ 'spinner': ['fg', 'Label'],
  \ 'header':  ['fg', 'Comment'] }

" ---- fzf.vim ----
nnoremap <Leader>t :call fzf#vim#buffer_tags(expand('<cword>'))<CR>
nnoremap <Leader>gt :call fzf#vim#tags(expand('<cword>'))<CR>
nnoremap <Leader>ag :call fzf#vim#ag(expand('<cword>'))<CR>

" Enable per-command history.
" CTRL-N and CTRL-P will be automatically bound to next-history and
" previous-history instead of down and up. If you don't like the change,
" explicitly bind the keys to down and up in your $FZF_DEFAULT_OPTS.
let g:fzf_history_dir = '~/.local/share/fzf-history'
"
" [Buffers] Jump to the existing window if possible
let g:fzf_buffers_jump = 1

" [[B]Commits] Customize the options used by 'git log':
let g:fzf_commits_log_options = '--graph --color=always --format="%C(auto)%h%d %s %C(black)%C(bold)%cr"'

" [Tags] Command to generate tags file
let g:fzf_tags_command = 'ctags -R'

" [Commands] --expect expression for directly executing the command
let g:fzf_commands_expect = 'alt-enter,ctrl-x'

" ---- git-blame ----
nnoremap <Leader>s :<C-u>call gitblame#echo()<CR>

" ---- julia-vim ----

" ---- Set transparent background ----
"hi! Normal ctermbg=none guibg=none
"hi! NonText ctermbg=none guibg=none

" suppress ctags version warning (since universal-ctags)
let g:easytags_suppress_ctags_warning = 1

" ---- fswitch.vim ----
" Switch to the file and load it into the current window >
nmap <silent> <Leader>of :FSHere<cr>
" Switch to the file and load it into the window on the right >
nmap <silent> <Leader>ol :FSRight<cr>
" Switch to the file and load it into a new window split on the right >
nmap <silent> <Leader>oL :FSSplitRight<cr>
" Switch to the file and load it into the window on the left >
nmap <silent> <Leader>oh :FSLeft<cr>
" Switch to the file and load it into a new window split on the left >
nmap <silent> <Leader>oH :FSSplitLeft<cr>
" Switch to the file and load it into the window above >
nmap <silent> <Leader>ok :FSAbove<cr>
" Switch to the file and load it into a new window split above >
nmap <silent> <Leader>oK :FSSplitAbove<cr>
" Switch to the file and load it into the window below >
nmap <silent> <Leader>oj :FSBelow<cr>
" Switch to the file and load it into a new window split below >
nmap <silent> <Leader>oJ :FSSplitBelow<cr>

" ---- Change splits navigation ----
nnoremap <C-J> <C-W><C-J>
nnoremap <C-K> <C-W><C-K>
nnoremap <C-L> <C-W><C-L>
nnoremap <C-H> <C-W><C-H>
fannheyward commented 4 years ago

Minimal vimrc please.

Try this:

"clangd": {
      "command": "clangd",
      "args": ["--background-index", "-–query-driver", "/home/andreasziegler/mt-robot/docker_includes/debian/**/*4.9"],
      "rootPatterns": ["compile_flags.txt", "compile_commands.json", ".vim/", ".git/", ".hg/"],
      "filetypes": ["c", "cpp", "objc", "objcpp"]
    },
AndreasAZiegler commented 4 years ago

Thanks. That seems to work.