From 6caa49f85986b0833a060e8f8c1ea4e54febdfa4 Mon Sep 17 00:00:00 2001 From: micbou Date: Sun, 7 Oct 2018 02:46:23 +0200 Subject: [PATCH 1/3] Update ycmd Include the following changes: - remove Node.js workaround for Debian-based distributions; - update Boost to 1.68; - add semantic trigger for Julia; - improve type information on C++ member functions; - check if Python headers are installed before building; - raise proper exception for commands when file is still being parsed in C-family languages; - update Go completer; - update regex submodule; - add Python path to debugging information; - support framework headers completion and code navigation in C-family languages; - update Clang to 7.0.0; - update jdt.ls to 0.25.0; - handle null hover response from language servers; - update list of completion kinds defined by LSP; - send completion item kinds capability to language servers; - update Parso to 0.3.1 and Jedi to 0.13.1. --- third_party/ycmd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/third_party/ycmd b/third_party/ycmd index c5ba63a6..ae8a33f8 160000 --- a/third_party/ycmd +++ b/third_party/ycmd @@ -1 +1 @@ -Subproject commit c5ba63a68444173267c00c6720d5ba69132d09b9 +Subproject commit ae8a33f87a116092639ba164a712960886890a1c From 9957e7ba0a5d19b753713863132b779bfa399d8f Mon Sep 17 00:00:00 2001 From: micbou Date: Sun, 7 Oct 2018 03:06:15 +0200 Subject: [PATCH 2/3] Update semantic triggers in documentation --- README.md | 54 +++++++++++++++++++++---------------------- doc/youcompleteme.txt | 54 +++++++++++++++++++++---------------------- 2 files changed, 54 insertions(+), 54 deletions(-) diff --git a/README.md b/README.md index 97ac7a4d..95e6c0c7 100644 --- a/README.md +++ b/README.md @@ -2058,10 +2058,10 @@ semantic engine will operate in them. You can get the filetype of the current file in Vim with `:set ft?`. -Default: `{'*' : 1}` +Default: `{'*': 1}` ```viml -let g:ycm_filetype_whitelist = { '*': 1 } +let g:ycm_filetype_whitelist = {'*': 1} ``` ### The `g:ycm_filetype_blacklist` option @@ -2077,16 +2077,16 @@ Default: `[see next line]` ```viml let g:ycm_filetype_blacklist = { - \ 'tagbar' : 1, - \ 'qf' : 1, - \ 'notes' : 1, - \ 'markdown' : 1, - \ 'unite' : 1, - \ 'text' : 1, - \ 'vimwiki' : 1, - \ 'pandoc' : 1, - \ 'infolog' : 1, - \ 'mail' : 1 + \ 'tagbar': 1, + \ 'qf': 1, + \ 'notes': 1, + \ 'markdown': 1, + \ 'unite': 1, + \ 'text': 1, + \ 'vimwiki': 1, + \ 'pandoc': 1, + \ 'infolog': 1, + \ 'mail': 1 \} ``` @@ -2124,7 +2124,7 @@ being filetype strings (like `python`, `cpp`, etc.) and values being unimportant The `*` key is special and matches all filetypes. Use this key if you want to completely disable filepath completion: ```viml -let g:ycm_filepath_blacklist = { '*': 1 } +let g:ycm_filepath_blacklist = {'*': 1} ``` You can get the filetype of the current file in Vim with `:set ft?`. @@ -2133,9 +2133,9 @@ Default: `[see next line]` ```viml let g:ycm_filepath_blacklist = { - \ 'html' : 1, - \ 'jsx' : 1, - \ 'xml' : 1, + \ 'html': 1, + \ 'jsx': 1, + \ 'xml': 1, \} ``` @@ -2771,17 +2771,17 @@ Default: `[see next line]` ```viml let g:ycm_semantic_triggers = { - \ 'c' : ['->', '.'], - \ 'objc' : ['->', '.', 're!\[[_a-zA-Z]+\w*\s', 're!^\s*[^\W\d]\w*\s', - \ 're!\[.*\]\s'], - \ 'ocaml' : ['.', '#'], - \ 'cpp,cuda,objcpp' : ['->', '.', '::'], - \ 'perl' : ['->'], - \ 'php' : ['->', '::'], - \ 'cs,java,javascript,typescript,d,python,perl6,scala,vb,elixir,go' : ['.'], - \ 'ruby' : ['.', '::'], - \ 'lua' : ['.', ':'], - \ 'erlang' : [':'], + \ 'c': ['->', '.'], + \ 'objc': ['->', '.', 're!\[[_a-zA-Z]+\w*\s', 're!^\s*[^\W\d]\w*\s', + \ 're!\[.*\]\s'], + \ 'ocaml': ['.', '#'], + \ 'cpp,cuda,objcpp': ['->', '.', '::'], + \ 'perl': ['->'], + \ 'php': ['->', '::'], + \ 'cs,d,elixir,go,groovy,java,javascript,julia,perl6,python,scala,typescript,vb': ['.'], + \ 'ruby,rust': ['.', '::'], + \ 'lua': ['.', ':'], + \ 'erlang': [':'], \ } ``` diff --git a/doc/youcompleteme.txt b/doc/youcompleteme.txt index 7f9a5c01..49c8c83b 100644 --- a/doc/youcompleteme.txt +++ b/doc/youcompleteme.txt @@ -2321,9 +2321,9 @@ the semantic engine will operate in them. You can get the filetype of the current file in Vim with ':set ft?'. -Default: "{'*' : 1}" +Default: "{'*': 1}" > - let g:ycm_filetype_whitelist = { '*': 1 } + let g:ycm_filetype_whitelist = {'*': 1} < ------------------------------------------------------------------------------- The *g:ycm_filetype_blacklist* option @@ -2338,16 +2338,16 @@ See the |g:ycm_filetype_whitelist| option for more details on how this works. Default: '[see next line]' > let g:ycm_filetype_blacklist = { - \ 'tagbar' : 1, - \ 'qf' : 1, - \ 'notes' : 1, - \ 'markdown' : 1, - \ 'unite' : 1, - \ 'text' : 1, - \ 'vimwiki' : 1, - \ 'pandoc' : 1, - \ 'infolog' : 1, - \ 'mail' : 1 + \ 'tagbar': 1, + \ 'qf': 1, + \ 'notes': 1, + \ 'markdown': 1, + \ 'unite': 1, + \ 'text': 1, + \ 'vimwiki': 1, + \ 'pandoc': 1, + \ 'infolog': 1, + \ 'mail': 1 \} < ------------------------------------------------------------------------------- @@ -2385,16 +2385,16 @@ matter). The '*' key is special and matches all filetypes. Use this key if you want to completely disable filepath completion: > - let g:ycm_filepath_blacklist = { '*': 1 } + let g:ycm_filepath_blacklist = {'*': 1} < You can get the filetype of the current file in Vim with ':set ft?'. Default: '[see next line]' > let g:ycm_filepath_blacklist = { - \ 'html' : 1, - \ 'jsx' : 1, - \ 'xml' : 1, + \ 'html': 1, + \ 'jsx': 1, + \ 'xml': 1, \} < ------------------------------------------------------------------------------- @@ -2988,17 +2988,17 @@ your trigger with 're!' to signify it's a regex trigger. For instance, Default: '[see next line]' > let g:ycm_semantic_triggers = { - \ 'c' : ['->', '.'], - \ 'objc' : ['->', '.', 're!\[[_a-zA-Z]+\w*\s', 're!^\s*[^\W\d]\w*\s', - \ 're!\[.*\]\s'], - \ 'ocaml' : ['.', '#'], - \ 'cpp,cuda,objcpp' : ['->', '.', '::'], - \ 'perl' : ['->'], - \ 'php' : ['->', '::'], - \ 'cs,java,javascript,typescript,d,python,perl6,scala,vb,elixir,go' : ['.'], - \ 'ruby' : ['.', '::'], - \ 'lua' : ['.', ':'], - \ 'erlang' : [':'], + \ 'c': ['->', '.'], + \ 'objc': ['->', '.', 're!\[[_a-zA-Z]+\w*\s', 're!^\s*[^\W\d]\w*\s', + \ 're!\[.*\]\s'], + \ 'ocaml': ['.', '#'], + \ 'cpp,cuda,objcpp': ['->', '.', '::'], + \ 'perl': ['->'], + \ 'php': ['->', '::'], + \ 'cs,d,elixir,go,groovy,java,javascript,julia,perl6,python,scala,typescript,vb': ['.'], + \ 'ruby,rust': ['.', '::'], + \ 'lua': ['.', ':'], + \ 'erlang': [':'], \ } < ------------------------------------------------------------------------------- From d2ee69d5219c485dcc499761c372ea122975d06a Mon Sep 17 00:00:00 2001 From: micbou Date: Sun, 7 Oct 2018 03:07:35 +0200 Subject: [PATCH 3/3] Remove ncurses-compat-libs dependency for Fedora The downloaded libclang on Linux does not depend on terminfo anymore. --- README.md | 4 +--- doc/youcompleteme.txt | 4 +--- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 95e6c0c7..d21a3b6e 100644 --- a/README.md +++ b/README.md @@ -260,9 +260,7 @@ Install development tools, CMake, and Python headers: - Fedora 27 and later: - sudo dnf install cmake gcc-c++ make ncurses-compat-libs python3-devel - - `ncurses-compat-libs` is only required for C-family languages support. + sudo dnf install cmake gcc-c++ make python3-devel - Ubuntu 14.04: diff --git a/doc/youcompleteme.txt b/doc/youcompleteme.txt index 49c8c83b..1bf67569 100644 --- a/doc/youcompleteme.txt +++ b/doc/youcompleteme.txt @@ -460,9 +460,7 @@ Install development tools, CMake, and Python headers: - Fedora 27 and later: - sudo dnf install cmake gcc-c++ make ncurses-compat-libs python3-devel - -'ncurses-compat-libs' is only required for C-family languages support. + sudo dnf install cmake gcc-c++ make python3-devel - Ubuntu 14.04: