Ddc is the abbreviation of "dark deno-powered completion". It provides an
extensible and asynchronous completion framework for neovim/Vim.
NOTE: I have created
Japanese article for ddc.vim.
After that I have created the next article
Japanese article for both
ddc.vim and pum.vim recently. You can read them by translation service.
NOTE: Ddc.vim does not include any UIs, sources and filters. You must
install them which you want manually. You can search ddc plugins(sources and
filters) from here.
health#denops#check
========================================================================
- INFO: Supported Deno version: `1.11.0`
- INFO: Detected Deno version: `1.12.2`
- OK: Deno version check: passed
- INFO: Supported Neovim version: `0.4.4`
- INFO: Detected Neovim version: `0.6.0`
- OK: Neovim version check: passed
- INFO: Denops status: `running`
- OK: Denops status check: passed
health#nvim#check
========================================================================
## Configuration
- OK: no issues found
## Performance
- OK: Build type: RelWithDebInfo
## Remote Plugins
- OK: Up to date
## terminal
- INFO: key_backspace (kbs) terminfo entry: key_backspace=\177
- INFO: key_dc (kdch1) terminfo entry: key_dc=\E[3~
- INFO: $VTE_VERSION='6203'
- INFO: $COLORTERM='truecolor'
health#provider#check
========================================================================
## Clipboard (optional)
- WARNING: No clipboard tool found. Clipboard registers (`"+` and `"*`) will not work.
- ADVICE:
- :help |clipboard|
## Python 2 provider (optional)
- WARNING: No Python executable found that can `import neovim`. Using the first available executable for diagnostics.
- ERROR: Python provider error:
- ADVICE:
- provider/pythonx: Could not load Python 2:
python2 not found in search path or not executable.
/usr/bin/python2.7 does not have the "neovim" module. :help |provider-python|
python2.6 not found in search path or not executable.
python not found in search path or not executable.
- INFO: Executable: Not found
## Python 3 provider (optional)
- INFO: `g:python3_host_prog` is not set. Searching for python3 in the environment.
- INFO: Executable: /usr/bin/python3
- INFO: Python version: 3.9.2
- INFO: pynvim version: 0.4.3
- OK: Latest pynvim is installed.
## Python virtualenv
- OK: no $VIRTUAL_ENV
## Ruby provider (optional)
- WARNING: `ruby` and `gem` must be in $PATH.
- ADVICE:
- Install Ruby and verify that `ruby` and `gem` commands work.
## Node.js provider (optional)
- WARNING: `node` and `npm` (or `yarn`) must be in $PATH.
- ADVICE:
- Install Node.js and verify that `node` and `npm` (or `yarn`) commands work.
## Perl provider (optional)
- ERROR: perl provider error:
- ADVICE:
- "Neovim::Ext" cpan module is not installed
health#treesitter#check
========================================================================
## Checking treesitter configuration
- INFO: Runtime ABI version : 13
- OK: Loaded parser for c: ABI version 13
Provide a minimal init.vim/vimrc with less than 50 lines (Required!)
" use dein for conveniencesetruntimepath+=/path/to/dein.vimcalldein#begin('~/.cache/dein')
calldein#add('Shougo/ddc-around')
calldein#add('Shougo/ddc.vim')
calldein#add('vim-denops/denops.vim')
calldein#end()
" Use around source.callddc#custom#patch_global('sources', ['around'])
callddc#custom#patch_global('sourceOptions', {
\ 'around': {'mark': 'A'},
\ })
callddc#custom#patch_global('sourceParams', {
\ 'around': {'maxSize': 500},
\ })
" XXXifexists('g:nonexist') &&g:nonexistcallddc#custom#patch_global('sources', ['NON-EXISTING'])
endifcallddc#enable()
How to reproduce the problem from neovim/Vim startup (Required!)
nvim -u vimrc works as expected, while nvim -u vimrc --cmd 'let g:nonexist=1' does not.
ddc#disable_cmdline_completion() is fail when cmdline is empty
Expected
Environment Information
ddc.vim version (SHA1):
51995c851b470cbca801f44a41c6f28a6b1a0f65
denops.vim version (SHA1):¬
228d446132825bd8035a5530a206611f639f9a74
deno version(deno -V output):
deno 1.16.3
OS:
Ubuntu 21.04
neovim/Vim :version output:
VIM - Vi IMproved 8.2 (2019 Dec 12, compiled Dec 3 2021 08:00:46)
適用済パッチ: 1-3724
Compiled by Hibiki <[email protected]>
Huge 版 without GUI. 機能の一覧 有効(+)/無効(-)
:checkhealth or :CheckHealth result(neovim only):
Provide a minimal init.vim/vimrc with less than 50 lines (Required!)
neovim/Vim :version output: checked with 2 versions.
nvim v0.6.0
NVIM v0.6.0-dev+220-gdb695cc4c
Build type: RelWithDebInfo
LuaJIT 2.1.0-beta3
Compilation: /usr/bin/cc -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 -DNVIM_TS_HAS_SET_MATCH_LIMIT -O2 -g -Og -g -Wall -Wextra -pedantic -Wno-unused-parameter -Wstrict-prototypes -std=gnu99 -Wshadow -Wconversion -Wmissing-prototypes -Wimplicit-fallthrough -Wvla -fstack-protector-strong -fno-common -fdiagnostics-color=always -DINCLUDE_GENERATED_DECLARATIONS -D_GNU_SOURCE -DNVIM_MSGPACK_HAS_FLOAT32 -DNVIM_UNIBI_HAS_VAR_FROM -DMIN_LOG_LEVEL=3 -I/home/luma/mybuild/neovim/build/config -I/home/luma/mybuild/neovim/src -I/home/luma/mybuild/neovim/.deps/usr/include -I/usr/include -I/home/luma/mybuild/neovim/build/src/nvim/auto -I/home/luma/mybuild/neovim/build/include
Compiled by luma
Features: +acl +iconv +tui
See ":help feature-compile"
system vimrc file: "$VIM/sysinit.vim"
fall-back for $VIM: "/home/luma/.local/build/nvim/nightly/share/nvim"
Run :checkhealth for more info
nvim v0.5.0
NVIM v0.5.0
Build type: RelWithDebInfo
LuaJIT 2.1.0-beta3
Compilation: /usr/bin/cc -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 -DNVIM_TS_HAS_SET_MATCH_LIMIT -O2 -g -Og -g -Wall -Wextra -pedantic -Wno-unused-parameter -Wstrict-prototypes -std=gnu99 -Wshadow -Wconversion -Wmissing-prototypes -Wimplicit-fallthrough -Wvla -fstack-protector-strong -fno-common -fdiagnostics-color=always -DINCLUDE_GENERATED_DECLARATIONS -D_GNU_SOURCE -DNVIM_MSGPACK_HAS_FLOAT32 -DNVIM_UNIBI_HAS_VAR_FROM -DMIN_LOG_LEVEL=3 -I/home/luma/mybuild/neovim/build/config -I/home/luma/mybuild/neovim/src -I/home/luma/mybuild/neovim/.deps/usr/include -I/usr/include -I/home/luma/mybuild/neovim/build/src/nvim/auto -I/home/luma/mybuild/neovim/build/include
Compiled by luma@MyComputer
Features: +acl +iconv +tui
See ":help feature-compile"
system vimrc file: "$VIM/sysinit.vim"
fall-back for $VIM: "/home/luma/.local/build/nvim/v0.5.0/share/nvim"
Run :checkhealth for more info
:checkhealth or :CheckHealth result(neovim only):
nvim v0.6.0
health#denops#check
========================================================================
- INFO: Supported Deno version: `1.14.0`
- INFO: Detected Deno version: `1.14.3`
- OK: Deno version check: passed
- INFO: Supported Neovim version: `0.5.0`
- INFO: Detected Neovim version: `0.6.0`
- OK: Neovim version check: passed
- INFO: Denops status: `running`
- OK: Denops status check: passed
health#nvim#check
========================================================================
## Configuration
- OK: no issues found
## Performance
- OK: Build type: RelWithDebInfo
## Remote Plugins
- OK: Up to date
## terminal
- INFO: key_backspace (kbs) terminfo entry: key_backspace=\177
- INFO: key_dc (kdch1) terminfo entry: key_dc=\E[3~
## tmux
- OK: escape-time: 0
- INFO: Checking stuff
- WARNING: `focus-events` is not enabled. |'autoread'| may not work.
- ADVICE:
- (tmux 1.9+ only) Set `focus-events` in ~/.tmux.conf:
set-option -g focus-events on
- INFO: $TERM: screen-256color
- WARNING: Neither Tc nor RGB capability set. True colors are disabled. |'termguicolors'| won't work properly.
- ADVICE:
- Put this in your ~/.tmux.conf and replace XXX by your $TERM outside of tmux:
set-option -sa terminal-overrides ',XXX:RGB'
- For older tmux versions use this instead:
set-option -ga terminal-overrides ',XXX:Tc'
health#provider#check
========================================================================
## Clipboard (optional)
- OK: Clipboard tool found: win32yank.exe from WSL
## Python 2 provider (optional)
- INFO: pyenv: Path: /home/luma/.pyenv/libexec/pyenv
- INFO: pyenv: Root: /home/luma/.pyenv
- WARNING: No Python executable found that can `import neovim`. Using the first available executable for diagnostics.
- ERROR: Python provider error:
- ADVICE:
- provider/pythonx: Could not load Python 2:
/usr/bin/python2 does not have the "neovim" module. :help |provider-python|
/usr/bin/python2.7 does not have the "neovim" module. :help |provider-python|
python2.6 not found in search path or not executable.
python not found in search path or not executable.
- INFO: Executable: Not found
## Python 3 provider (optional)
- INFO: pyenv: Path: /home/luma/.pyenv/libexec/pyenv
- INFO: pyenv: Root: /home/luma/.pyenv
- INFO: Using: g:python3_host_prog = "/home/luma/.local/venvs/nvim/bin/python3"
- INFO: Executable: /home/luma/.local/venvs/nvim/bin/python3
- INFO: Python version: 3.8.5
- INFO: pynvim version: 0.4.2 (outdated; from ~/.local/venvs/nvim/lib/python3.8/site-packages/neovim)
- WARNING: Latest pynvim is NOT installed: 0.4.3
## Python virtualenv
- OK: no $VIRTUAL_ENV
## Ruby provider (optional)
- INFO: Ruby: ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-linux-gnu]
- WARNING: `neovim-ruby-host` not found.
- ADVICE:
- Run `gem install neovim` to ensure the neovim RubyGem is installed.
- Run `gem environment` to ensure the gem bin directory is in $PATH.
- If you are using rvm/rbenv/chruby, try "rehashing".
- See :help |g:ruby_host_prog| for non-standard gem installations.
## Node.js provider (optional)
- INFO: Node.js: v14.17.5
- WARNING: Missing "neovim" npm (or yarn) package.
- ADVICE:
- Run in shell: npm install -g neovim
- Run in shell (if you use yarn): yarn global add neovim
## Perl provider (optional)
- ERROR: perl provider error:
- ADVICE:
- "Neovim::Ext" cpan module is not installed
nvim v0.5.0
health#denops#check
========================================================================
- INFO: Supported Deno version: `1.14.0`
- INFO: Detected Deno version: `1.14.3`
- OK: Deno version check: passed
- INFO: Supported Neovim version: `0.5.0`
- INFO: Detected Neovim version: `0.5.0`
- OK: Neovim version check: passed
- INFO: Denops status: `running`
- OK: Denops status check: passed
health#nvim#check
========================================================================
## Configuration
- OK: no issues found
## Performance
- OK: Build type: RelWithDebInfo
## Remote Plugins
- OK: Up to date
## terminal
- INFO: key_backspace (kbs) terminfo entry: key_backspace=\177
- INFO: key_dc (kdch1) terminfo entry: key_dc=\E[3~
## tmux
- OK: escape-time: 0
- INFO: Checking stuff
- WARNING: `focus-events` is not enabled. |'autoread'| may not work.
- ADVICE:
- (tmux 1.9+ only) Set `focus-events` in ~/.tmux.conf:
set-option -g focus-events on
- INFO: $TERM: screen-256color
- WARNING: Neither Tc nor RGB capability set. True colors are disabled. |'termguicolors'| won't work properly.
- ADVICE:
- Put this in your ~/.tmux.conf and replace XXX by your $TERM outside of tmux:
set-option -sa terminal-overrides ',XXX:RGB'
- For older tmux versions use this instead:
set-option -ga terminal-overrides ',XXX:Tc'
health#provider#check
========================================================================
## Clipboard (optional)
- OK: Clipboard tool found: win32yank.exe from WSL
## Python 2 provider (optional)
- INFO: pyenv: Path: /home/luma/.pyenv/libexec/pyenv
- INFO: pyenv: Root: /home/luma/.pyenv
- WARNING: No Python executable found that can `import neovim`. Using the first available executable for diagnostics.
- ERROR: Python provider error:
- ADVICE:
- provider/pythonx: Could not load Python 2:
/usr/bin/python2 does not have the "neovim" module. :help |provider-python|
/usr/bin/python2.7 does not have the "neovim" module. :help |provider-python|
python2.6 not found in search path or not executable.
python not found in search path or not executable.
- INFO: Executable: Not found
## Python 3 provider (optional)
- INFO: pyenv: Path: /home/luma/.pyenv/libexec/pyenv
- INFO: pyenv: Root: /home/luma/.pyenv
- INFO: Using: g:python3_host_prog = "/home/luma/.local/venvs/nvim/bin/python3"
- INFO: Executable: /home/luma/.local/venvs/nvim/bin/python3
- INFO: Python version: 3.8.5
- INFO: pynvim version: 0.4.2 (outdated; from ~/.local/venvs/nvim/lib/python3.8/site-packages/neovim)
- WARNING: Latest pynvim is NOT installed: 0.4.3
## Python virtualenv
- OK: no $VIRTUAL_ENV
## Ruby provider (optional)
- INFO: Ruby: ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-linux-gnu]
- WARNING: `neovim-ruby-host` not found.
- ADVICE:
- Run `gem install neovim` to ensure the neovim RubyGem is installed.
- Run `gem environment` to ensure the gem bin directory is in $PATH.
- If you are using rvm/rbenv/chruby, try "rehashing".
- See :help |g:ruby_host_prog| for non-standard gem installations.
## Node.js provider (optional)
- INFO: Node.js: v14.17.5
- WARNING: Missing "neovim" npm (or yarn) package.
- ADVICE:
- Run in shell: npm install -g neovim
- Run in shell (if you use yarn): yarn global add neovim
## Perl provider (optional)
- ERROR: perl provider error:
- ADVICE:
- "Neovim::Ext" cpan module is not installed
Provide a minimal init.vim/vimrc with less than 50 lines (Required!)
When enabling ddc, after hitting some words then ddc outputs errors during denops#server#notify .
I checked denops itself worked without troubles.
Error output
TextChangedI Autocommands for "*"..function denops#notify[1]..denops#server#notify[2]..TextChangedI Autocommands for "*"..function denops#notify[1]..denops#server#notify の処理中にエラーが検出されました:
行 2:
E605: 例外が捕捉されませんでした: The server is not ready yet
Expected
I'm quite new to the vim area. Any trouble shoot guides are quite helpful. Thank you.
Environment Information
ddc version (SHA1): 0.4
OS: Windows 10
neovim/Vim :version output: Vim 8.2
Provide a minimal init.vim/vimrc with less than 50 lines (Required!)
" I use dein installation to get ddccallddc#custom#patch_global('sources', ['around'])
callddc#custom#patch_global('sourceOptions', {
\ '_': {
\ 'matchers': ['matcher_head'],
\ 'sorters': ['sorter_rank'],},
\ })
inoremap<silent><expr><TAB>\ pumvisible() ? '<C-n>' :\ (col('.') <= 1 <Bar><Bar> getline('.')[col('.') - 2] =~# '\s') ?\ '<TAB>' : ddc#manual_complete()inoremap<expr><S-TAB> pumvisible() ? '<C-p>' : '<C-h>'callddc#enable()
How to reproduce the problem from neovim/Vim startup (Required!)
Install ddc and dependencies. (Install also ddc-around, ddc-matcher_head, ddc-sorter_rank)
Type settings into .vimrc like above.
Enabling ddc with call ddc#enable() (Before enabling, any errors is not output)
denops.vim version (SHA1): b6f96d9fdcaccaf0d2fcbd821d93e3995d04cf0b
deno version(deno -V output): deno 1.14.3
OS: macOS 11.6 & Ubuntu 21.04
neovim/Vim :version output:
:version
NVIM v0.6.0-dev+a161559
Build type: Debug
LuaJIT 2.1.0-beta3
Compilation: /usr/bin/cc -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 -DNVIM_TS_HAS_SE
T_MATCH_LIMIT -g -Wall -Wextra -pedantic -Wno-unused-parameter -Wstrict-prototy
pes -std=gnu99 -Wshadow -Wconversion -Wmissing-prototypes -Wimplicit-fallthroug
h -Wvla -fstack-protector-strong -fno-common -fdiagnostics-color=always -DINCLU
DE_GENERATED_DECLARATIONS -D_GNU_SOURCE -DNVIM_MSGPACK_HAS_FLOAT32 -DNVIM_UNIBI
_HAS_VAR_FROM -DMIN_LOG_LEVEL=1 -I/root/neovim/build/config -I/root/neovim/src
-I/root/neovim/.deps/usr/include -I/usr/include -I/root/neovim/build/src/nvim/a
uto -I/root/neovim/build/include
Compiled by root@buildkitsandbox
Features: +acl +iconv +tui
See ":help feature-compile"
system vimrc file: "$VIM/sysinit.vim"
fall-back for $VIM: "/root/local/nvim/share/nvim"
Run :checkhealth for more info
:checkhealth or :CheckHealth result(neovim only):
:checkhealth
denops: health#denops#check
========================================================================
- INFO: Supported Deno version: `1.14.0`
- INFO: Detected Deno version: `1.14.3`
- OK: Deno version check: passed
- INFO: Supported Neovim version: `0.5.0`
- INFO: Detected Neovim version: `0.6.0`
- OK: Neovim version check: passed
- INFO: Denops status: `running`
- OK: Denops status check: passed
nvim: health#nvim#check
========================================================================
## Configuration
- ERROR: Locale does not support UTF-8. Unicode characters may not display correctly.
$LANG= $LC_ALL= $LC_CTYPE=
- ADVICE:
- If using tmux, try the -u option.
- Ensure that your terminal/shell/tmux/etc inherits the environment, or set $LANG explicitly.
- Configure your system locale.
## Performance
- INFO: Build type: Debug
- WARNING: Non-optimized (DEBUG) build. Nvim will be slower.
- ADVICE:
- Install a different Nvim package, or rebuild with `CMAKE_BUILD_TYPE=RelWithDebInfo`.
- https://github.com/neovim/neovim/wiki/FAQ
## Remote Plugins
- OK: Up to date
## terminal
- INFO: key_backspace (kbs) terminfo entry: key_backspace=\177
- INFO: key_dc (kdch1) terminfo entry: key_dc=\E[3~
provider: health#provider#check
========================================================================
## Clipboard (optional)
- WARNING: No clipboard tool found. Clipboard registers (`"+` and `"*`) will not work.
- ADVICE:
- :help clipboard
## Python 2 provider (optional)
- WARNING: No Python executable found that can `import neovim`. Using the first available executable for diagnostics.
- ERROR: Python provider error:
- ADVICE:
- provider/pythonx: Could not load Python 2:
python2 not found in search path or not executable.
python2.7 not found in search path or not executable.
python2.6 not found in search path or not executable.
python not found in search path or not executable.
- INFO: Executable: Not found
## Python 3 provider (optional)
- WARNING: No Python executable found that can `import neovim`. Using the first available executable for diagnostics.
- ERROR: Python provider error:
- ADVICE:
- provider/pythonx: Could not load Python 3:
python3 not found in search path or not executable.
python3.10 not found in search path or not executable.
python3.9 not found in search path or not executable.
python3.8 not found in search path or not executable.
python3.7 not found in search path or not executable.
python3.6 not found in search path or not executable.
python not found in search path or not executable.
- INFO: Executable: Not found
## Python virtualenv
- OK: no $VIRTUAL_ENV
## Ruby provider (optional)
- WARNING: `ruby` and `gem` must be in $PATH.
- ADVICE:
- Install Ruby and verify that `ruby` and `gem` commands work.
## Node.js provider (optional)
- WARNING: `node` and `npm` (or `yarn`) must be in $PATH.
- ADVICE:
- Install Node.js and verify that `node` and `npm` (or `yarn`) commands work.
## Perl provider (optional)
- ERROR: perl provider error:
- ADVICE:
- "Neovim::Ext" cpan module is not installed
vim.lsp: require("vim.lsp.health").check()
========================================================================
- INFO: LSP log level : WARN
- INFO: Log path: /root/.cache/nvim/lsp.log
- INFO: Log size: 0 KB
vim.treesitter: require("vim.treesitter.health").check()
========================================================================
- INFO: Runtime ABI version : 13
- OK: Loaded parser for c: ABI version 13
Provide a minimal init.vim/vimrc with less than 50 lines (Required!)
Is it possible to use Omni sources with ddc ? I was previously using Deoplete with Vimtex autocompletion, but wanted to move to ddc now, since it is being maintained.
denops.vim version (SHA1):
b6f96d9fdcaccaf0d2fcbd821d93e3995d04cf0b
pum.vim version (SHA1):
6eef66e95853382639222d310c29f0838aa04354
deno version(deno -V output):
deno 1.14.3
OS:
macOS Big Sur 11.6
neovim/Vim :version output:
NVIM v0.6.0-dev+c61a3865e
Build type: Release
LuaJIT 2.1.0-beta3
Compiled by ippachi@IFM
Features: +acl +iconv +tui
See ":help feature-compile"
system vimrc file: "$VIM/sysinit.vim"
fall-back for $VIM: "/usr/local/Cellar/neovim/HEAD-c61a386/share/nvim"
Run :checkhealth for more info
:checkhealth or :CheckHealth result(neovim only):
denops: health#denops#check
========================================================================
- INFO: Supported Deno version: `1.14.0`
- INFO: Detected Deno version: `1.14.3`
- OK: Deno version check: passed
- INFO: Supported Neovim version: `0.5.0`
- INFO: Detected Neovim version: `0.6.0`
- OK: Neovim version check: passed
- INFO: Denops status: `running`
- OK: Denops status check: passed
nvim: health#nvim#check
========================================================================
## Configuration
- OK: no issues found
## Performance
- OK: Build type: Release
## Remote Plugins
- OK: Up to date
## terminal
- INFO: key_backspace (kbs) terminfo entry: key_backspace=^H
- INFO: key_dc (kdch1) terminfo entry: key_dc=\E[3~
- INFO: $TERM_PROGRAM='tmux'
- INFO: $COLORTERM='truecolor'
## tmux
- OK: escape-time: 10
- INFO: Checking stuff
- WARNING: `focus-events` is not enabled. |'autoread'| may not work.
- ADVICE:
- (tmux 1.9+ only) Set `focus-events` in ~/.tmux.conf:
set-option -g focus-events on
- INFO: $TERM: screen-256color
provider: health#provider#check
========================================================================
## Clipboard (optional)
- OK: Clipboard tool found: pbcopy
## Python 2 provider (optional)
- WARNING: No Python executable found that can `import neovim`. Using the first available executable for diagnostics.
- ERROR: Python provider error:
- ADVICE:
- provider/pythonx: Could not load Python 2:
/usr/bin/python2 does not have the "neovim" module. :help |provider-python|
/usr/bin/python2.7 does not have the "neovim" module. :help |provider-python|
python2.6 not found in search path or not executable.
/usr/bin/python does not have the "neovim" module. :help |provider-python|
- INFO: Executable: Not found
## Python 3 provider (optional)
- INFO: `g:python3_host_prog` is not set. Searching for python3 in the environment.
- INFO: Multiple python3 executables found. Set `g:python3_host_prog` to avoid surprises.
- INFO: Executable: /usr/local/bin/python3
- INFO: Other python executable: /usr/bin/python3
- INFO: Python version: 3.9.7
- INFO: pynvim version: 0.4.3
- OK: Latest pynvim is installed.
## Python virtualenv
- OK: no $VIRTUAL_ENV
## Ruby provider (optional)
- INFO: Ruby: ruby 3.0.0p0 (2020-12-25 revision 95aff21468) [x86_64-darwin20]
- WARNING: `neovim-ruby-host` not found.
- ADVICE:
- Run `gem install neovim` to ensure the neovim RubyGem is installed.
- Run `gem environment` to ensure the gem bin directory is in $PATH.
- If you are using rvm/rbenv/chruby, try "rehashing".
- See :help |g:ruby_host_prog| for non-standard gem installations.
## Node.js provider (optional)
- INFO: Node.js: v15.6.0
- WARNING: Missing "neovim" npm (or yarn) package.
- ADVICE:
- Run in shell: npm install -g neovim
- Run in shell (if you use yarn): yarn global add neovim
## Perl provider (optional)
- ERROR: perl provider error:
- ADVICE:
- "Neovim::Ext" cpan module is not installed
vim.lsp: require("vim.lsp.health").check()
========================================================================
- INFO: LSP log level : WARN
- INFO: Log path: /Users/ippachi/.cache/nvim/lsp.log
- INFO: Log size: 847 KB
vim.treesitter: require("vim.treesitter.health").check()
========================================================================
- INFO: Runtime ABI version : 13
Provide a minimal init.vim/vimrc with less than 50 lines (Required!)
version:
NVIM v0.5.0-dev
Build type: RelWithDebInfo
LuaJIT 2.1.0-beta3
Compilation: /usr/bin/cc -g -O2 -fdebug-prefix-map=/build/neovim-FcanTI/neovim-0.5.0+ubuntu2+git202106241800-24e0c16fd-d569569c9=. -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SO
Compiled by buildd@lgw01-amd64-026
Features: +acl +iconv +tui
See ":help feature-compile"
system vimrc file: "$VIM/sysinit.vim"
fall-back for $VIM: "/usr/share/nvim"
Provide a minimal init.vim/vimrc with less than 50 lines (Required!)
callplug#begin('~/.vim/plugged')
Plug 'Shougo/ddc.vim'
Plug 'vim-denops/denops.vim'callplug#end()
" Use around source. V here is Missing quote callddc#custom#global('sources', { '_': ['around] })
" Enable default matcher.callddc#custom#source('_', 'matchers', ['matcher_head'])
" Use ddc.callddc#enable()
How to reproduce the problem from neovim/Vim startup (Required!)
Save the above configuration file as minimal.vim.
Specify the above configuration file in the vim/nvim startup options.
e.g.) nvim -u minimal.vim
You can see the error messages. check log with :messages.
Upload the log file
Error detected while processing /path/to/minimal.vim:
line 7:
E115: Missing quote: 'around] })
E116: Invalid arguments for function ddc#custom#global
health#denops#check
========================================================================
- INFO: Supported Deno version: `1.11.0`
- INFO: Detected Deno version: `1.13.2`
- OK: Deno version check: passed
- INFO: Supported Neovim version: `0.4.4`
- INFO: Detected Neovim version: `0.5.0`
- OK: Neovim version check: passed
- INFO: Denops status: `running`
- OK: Denops status check: passed
health#nvim#check
========================================================================
## Configuration
- ERROR: Locale does not support UTF-8. Unicode characters may not display correctly.
$LANG= $LC_ALL= $LC_CTYPE=
- ADVICE:
- If using tmux, try the -u option.
- Ensure that your terminal/shell/tmux/etc inherits the environment, or set $LANG explicitly.
- Configure your system locale.
## Performance
- INFO: Build type: Debug
- WARNING: Non-optimized (DEBUG) build. Nvim will be slower.
- ADVICE:
- Install a different Nvim package, or rebuild with `CMAKE_BUILD_TYPE=RelWithDebInfo`.
- https://github.com/neovim/neovim/wiki/FAQ
## Remote Plugins
- OK: Up to date
## terminal
- INFO: key_backspace (kbs) terminfo entry: key_backspace=\177
- INFO: key_dc (kdch1) terminfo entry: key_dc=\E[3~
health#provider#check
========================================================================
## Clipboard (optional)
- WARNING: No clipboard tool found. Clipboard registers (`"+` and `"*`) will not work.
- ADVICE:
- :help clipboard
## Python 2 provider (optional)
- WARNING: No Python executable found that can `import neovim`. Using the first available executable for diagnostics.
- ERROR: Python provider error:
- ADVICE:
- provider/pythonx: Could not load Python 2:
python2 not found in search path or not executable.
python2.7 not found in search path or not executable.
python2.6 not found in search path or not executable.
python not found in search path or not executable.
- INFO: Executable: Not found
## Python 3 provider (optional)
- WARNING: No Python executable found that can `import neovim`. Using the first available executable for diagnostics.
- ERROR: Python provider error:
- ADVICE:
- provider/pythonx: Could not load Python 3:
python3 not found in search path or not executable.
python3.10 not found in search path or not executable.
python3.9 not found in search path or not executable.
python3.8 not found in search path or not executable.
python3.7 not found in search path or not executable.
python3.6 not found in search path or not executable.
python not found in search path or not executable.
- INFO: Executable: Not found
## Python virtualenv
- OK: no $VIRTUAL_ENV
## Ruby provider (optional)
- WARNING: `ruby` and `gem` must be in $PATH.
- ADVICE:
- Install Ruby and verify that `ruby` and `gem` commands work.
## Node.js provider (optional)
- WARNING: `node` and `npm` (or `yarn`) must be in $PATH.
- ADVICE:
- Install Node.js and verify that `node` and `npm` (or `yarn`) commands work.
## Perl provider (optional)
- ERROR: perl provider error:
- ADVICE:
- "Neovim::Ext" cpan module is not installed
health#treesitter#check
========================================================================
## Checking treesitter configuration
- INFO: Runtime ABI version : 13
- OK: Loaded parser for c: ABI version 13
Provide a minimal init.vim/vimrc with less than 50 lines (Required!)
:version
NVIM v0.6.0-dev+189-g274a3504a
Build type: Release
LuaJIT 2.1.0-beta3
Compiled by jinnouchi.yasushi@O-10413-MAC
Features: +acl +iconv +tui
See ":help feature-compile"
システム vimrc: "$VIM/sysinit.vim"
省略時の $VIM: "/usr/local/Cellar/neovim/HEAD-274a350/share/nvim"
Run :checkhealth for more info
続けるにはENTERを押すかコマンドを入力してください
:checkhealth or :CheckHealth result(neovim only):
:checkhealth
health#lspconfig#check
========================================================================
## Checking language server protocol configuration
- INFO: bashls: configuration checked.
- INFO: denols: configuration checked.
- INFO: vuels: configuration checked.
- INFO: yamlls: configuration checked.
- INFO: vimls: configuration checked.
- INFO: terraformls: configuration checked.
- INFO: sourcekit: configuration checked.
- INFO: solargraph: configuration checked.
- INFO: pyright: configuration checked.
- INFO: intelephense: configuration checked.
- INFO: dockerls: configuration checked.
- ERROR: cssls: The given command "vscode-css-language-server" is not executable.
- INFO: clangd: configuration checked.
- INFO: tsserver: configuration checked.
- INFO: efm: configuration checked.
- ERROR: html: The given command "vscode-html-language-server" is not executable.
- INFO: gopls: configuration checked.
- INFO: sumneko_lua: configuration checked.
- INFO: teal: configuration checked.
health#nvim#check
========================================================================
## Configuration
- OK: no issues found
## Performance
- OK: Build type: Release
## Remote Plugins
- OK: Up to date
## terminal
- INFO: key_backspace (kbs) terminfo entry: key_backspace=^H
- INFO: key_dc (kdch1) terminfo entry: key_dc=\E[3~
- INFO: $TERM_PROGRAM='tmux'
- INFO: $COLORTERM='truecolor'
## tmux
- OK: escape-time: 0
- INFO: Checking stuff
- OK: focus-events: on
- INFO: $TERM: xterm-256color
- ERROR: $TERM should be "screen-256color" or "tmux-256color" in tmux. Colors might look wrong.
- ADVICE:
- Set default-terminal in ~/.tmux.conf:
set-option -g default-terminal "screen-256color"
- https://github.com/neovim/neovim/wiki/FAQ
- WARNING: Neither Tc nor RGB capability set. True colors are disabled. |'termguicolors'| won't work properly.
- ADVICE:
- Put this in your ~/.tmux.conf and replace XXX by your $TERM outside of tmux:
set-option -sa terminal-overrides ',XXX:RGB'
- For older tmux versions use this instead:
set-option -ga terminal-overrides ',XXX:Tc'
health#provider#check
========================================================================
## Clipboard (optional)
- OK: Clipboard tool found: pbcopy
## Python 2 provider (optional)
- WARNING: No Python executable found that can `import neovim`. Using the first available executable for diagnostics.
- ERROR: Python provider error:
- ADVICE:
- provider/pythonx: Could not load Python 2:
/usr/bin/python2 does not have the "neovim" module. :help |provider-python|
/usr/bin/python2.7 does not have the "neovim" module. :help |provider-python|
python2.6 not found in search path or not executable.
/usr/bin/python does not have the "neovim" module. :help |provider-python|
- INFO: Executable: Not found
## Python 3 provider (optional)
- INFO: `g:python3_host_prog` is not set. Searching for python3 in the environment.
- INFO: Multiple python3 executables found. Set `g:python3_host_prog` to avoid surprises.
- INFO: Executable: /usr/local/bin/python3
- INFO: Other python executable: /usr/bin/python3
- INFO: Python version: 3.9.6
- INFO: pynvim version: 0.4.2 (outdated; from ~/Library/Python/3.9/lib/python/site-packages/neovim)
- WARNING: Latest pynvim is NOT installed: 0.4.3
## Python virtualenv
- OK: no $VIRTUAL_ENV
## Ruby provider (optional)
- INFO: Ruby: ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [x86_64-darwin20]
- WARNING: `neovim-ruby-host` not found.
- ADVICE:
- Run `gem install neovim` to ensure the neovim RubyGem is installed.
- Run `gem environment` to ensure the gem bin directory is in $PATH.
- If you are using rvm/rbenv/chruby, try "rehashing".
- See :help |g:ruby_host_prog| for non-standard gem installations.
## Node.js provider (optional)
- INFO: Node.js: v14.15.0
- INFO: Nvim node.js host: /Users/jinnouchi.yasushi/.nodenv/versions/14.15.0/lib/node_modules/neovim/bin/cli.js
- WARNING: Package "neovim" is out-of-date. Installed: 4.9.0, latest: 4.10.0
- ADVICE:
- Run in shell: npm install -g neovim
- Run in shell (if you use yarn): yarn global add neovim
## Perl provider (optional)
- ERROR: perl provider error:
- ADVICE:
- "Neovim::Ext" cpan module is not installed
health#treesitter#check
========================================================================
## Checking treesitter configuration
- INFO: Runtime ABI version : 13
Provide a minimal init.vim/vimrc with less than 50 lines (Required!)
How to reproduce the problem from neovim/Vim startup (Required!)
Run this Dockerfile above
nvim .config/nvim/init.vim
Type some texts and wait for a while.
See this error
error
[denops] Error: Failed to call 'registerSource' with [{"name":"around","path":"/root/.local/share/nvim/site/pack/packer/start/ddc-around/denops/ddc/sources/around.ts"}]: TypeError: TS2416 [ERROR]: Property 'gatherCandidates' in type 'Source'
is not assignable to the same property in base type 'BaseSource'.
[denops] Type '(args: { denops: Denops; sourceParams: Record<string, unknown>; completeStr: string; }) => Promise<Candidate[]>' is not assignable to type '{ (denops: Denops, context: Context, options: DdcOptions, sourceOptions: SourceOption
s, sourceParams: Record<string, unknown>, completeStr: string): Promise<...>; (args: GatherCandidatesArguments): Promise<...>; }'.
[denops] Types of parameters 'args' and 'denops' are incompatible.
[denops] Type 'Denops' is missing the following properties from type '{ denops: Denops; sourceParams: Record<string, unknown>; completeStr: string; }': denops, sourceParams, completeStr
[denops] async gatherCandidates(args: {
[denops] ~~~~~~~~~~~~~~~~
[denops] at file:///root/.local/share/nvim/site/pack/packer/start/ddc-around/denops/ddc/sources/around.ts:21:9
[denops] at async Ddc.registerSource (file:///root/.local/share/nvim/site/pack/packer/start/ddc.vim/denops/ddc/ddc.ts:129:17)
[denops] at async Session.registerSource (file:///root/.local/share/nvim/site/pack/packer/start/ddc.vim/denops/ddc/app.ts:18:7)
[denops] at async Session.dispatch (https://deno.land/x/[email protected]/session.ts:99:12)
[denops] at async https://deno.land/x/[email protected]/session.ts:108:18
[denops] at async Session.handleRequest (https://deno.land/x/[email protected]/session.ts:104:29)
[denops] at Session.call (https://deno.land/x/[email protected]/session.ts:207:13)
[denops] at async Service.dispatch (file:///root/.local/share/nvim/site/pack/packer/start/denops.vim/denops/@denops-private/service/service.ts:112:14)
[denops] at async Session.invoke (file:///root/.local/share/nvim/site/pack/packer/start/denops.vim/denops/@denops-private/service/host/nvim.ts:44:16)
[denops] at async Session.dispatch (https://deno.land/x/[email protected]/session.ts:99:12)
[denops] at async Session.handleNotification (https://deno.land/x/[email protected]/session.ts:130:7)
[denops] Error: Failed to call 'registerFilter' with [{"name":"matcher_head","path":"/root/.local/share/nvim/site/pack/packer/start/ddc-matcher_head/denops/ddc/filters/matcher_head.ts"}]: TypeError: TS2416 [ERROR]: Property 'filter' in type '
Filter' is not assignable to the same property in base type 'BaseFilter'.
[denops] Type '(args: { sourceOptions: SourceOptions; completeStr: string; candidates: Candidate[]; }) => Promise<Candidate[]>' is not assignable to type '{ (denops: Denops, context: Context, options: DdcOptions, sourceOptions: SourceOption
s, filterOptions: FilterOptions, filterParams: Record<...>, completeStr: string, candidates: Candidate[]): Promise<...>; (args: FilterArguments): Promise<...>; }'.
[denops] Types of parameters 'args' and 'denops' are incompatible.
[denops] Type 'Denops' is missing the following properties from type '{ sourceOptions: SourceOptions; completeStr: string; candidates: Candidate[]; }': sourceOptions, completeStr, candidates
[denops] filter(args: {
[denops] ~~~~~~
[denops] at file:///root/.local/share/nvim/site/pack/packer/start/ddc-matcher_head/denops/ddc/filters/matcher_head.ts:8:3
[denops] at async Ddc.registerFilter (file:///root/.local/share/nvim/site/pack/packer/start/ddc.vim/denops/ddc/ddc.ts:139:17)
[denops] at async Session.registerFilter (file:///root/.local/share/nvim/site/pack/packer/start/ddc.vim/denops/ddc/app.ts:22:7)
[denops] at async Session.dispatch (https://deno.land/x/[email protected]/session.ts:99:12)
[denops] at async https://deno.land/x/[email protected]/session.ts:108:18
[denops] at async Session.handleRequest (https://deno.land/x/[email protected]/session.ts:104:29)
[denops] at Session.call (https://deno.land/x/[email protected]/session.ts:207:13)
[denops] at async Service.dispatch (file:///root/.local/share/nvim/site/pack/packer/start/denops.vim/denops/@denops-private/service/service.ts:112:14)
[denops] at async Session.invoke (file:///root/.local/share/nvim/site/pack/packer/start/denops.vim/denops/@denops-private/service/host/nvim.ts:44:16)
[denops] at async Session.dispatch (https://deno.land/x/[email protected]/session.ts:99:12)
[denops] at async Session.handleNotification (https://deno.land/x/[email protected]/session.ts:130:7)
Is it the intended behaviour that when the cursor is not at the end of the line, the inline suggestion erases what follows? For example (bold chars mean inline suggestion, "|" is cursor):
Let's say I'm here:
print("p|")
Now, if I type "o", then the displays become:
print("pr|operty
Or if there is something in front, the completion should not trigger or expand ( print("pr|operty") )?
NVIM v0.6.0-dev+319-gc20899302
Build type: Release
LuaJIT 2.1.0-beta3
Compiled by root
Features: +acl +iconv +tui
See ":help feature-compile"
system vimrc file: "$VIM/sysinit.vim"
fall-back for $VIM: "/usr/local/share/nvim"
Run :checkhealth for more info
:checkhealth or :CheckHealth result(neovim only):
No issues.
Provide a minimal init.vim/vimrc with less than 50 lines (Required!)
Put this lines in (runtimepath)/denops/@ddc-sources/empty.ts
Warning: I will close the issue without the minimal init.vim and the reproduction instructions.
Problems summary
When there're a lot of functions registered in Vim, triggering completion causes error Failed to parse received text '...': Syntax Error: Unexpected token i in JSON at position 65540. (Actually '...' is received JSON. The position or exact error message may differ, but error position is around 65000-. The shown received JSON seems incomplete.)
Provide a minimal init.vim/vimrc with less than 50 lines (Required!)
Save the following file as a repro.vim.
setnocompatiblelaststatus=2cmdheight=2" Please prepare dependencies in the current directory or specify the path to" those plugins." - 'vim-denops/denops.vim'" - 'Shougo/ddc.vim'" - 'Shougo/ddc-matcher_head'" - 'Shougo/ddc-sorter_rank'" - 'Shougo/neco-vim'setruntimepath+=denops.vim,ddc.vim,ddc-matcher_head,ddc-sorter_rank,neco-vim" Register a lot of functions.foriinrange(20000)
function! ASDF{i}() abortendfunctionendforcallddc#custom#patch_global('sourceOptions', {
\ '_': {
\ 'matchers': ['matcher_head'],
\ 'sorters': ['sorter_rank'],
\ },
\ })
callddc#custom#patch_filetype(['vim'], 'sources', ['necovim'])
" This manual completion is not requiredinoremap<silent><expr><C-Space> ddc#manual_complete()callddc#enable()
How to reproduce the problem from neovim/Vim startup (Required!)
Prepare dependencies
gvim -u repro.vim test.vim
:set ft=vim
Type call exp in insert mode and wait for compleion (or press to force completion).
You'll see error message as below and no completions show up.
Are popup menu navigation TAB and S-TAB keybindings enabled by default? If not, can you please give an example to achieve this similar to deoplete.nvim plugin?
I've created very simple sample extension, and I make it volatile.
When I run vim on one terminal with minimal setup, and sample code on the other.
Then I change available options, they are not reloaded.
Software:
VIM - Vi IMproved 8.2 (2019 Dec 12, compiled May 28 2021 06:58:52)
Zadane łaty: 1-2891
Skompilowany przez Arch Linux
5.13.13-1-MANJARO updated with latest packages available in repository
Are you consider adding floating preview window feature support to vim to show snippet and hook information, just like coc.nvim?
Or create a new plugin to implement this feature both work on nvim and vim ? I noticed that both ddc.vim and coc.nvim are plugins based on ts scripts. Does this make it possible to increase floating windows feature for vim ?
I found each filer & source succeeds the apiVersion property. Can plugin authors use this to show warnings when the user is using old ddc.vim?
For instance, I want to use updated onInit() that has sourceParams in its arguments. Can I warn when apiVersion < 2, that is, no sourceParams in arguments?
This is probably going to be a bit long winded of a post, so bear with me.
The high level issue I've been encountering is that the popup completion window seems to appear quite inconsistently for me. Sometimes it shows, sometimes it doesn't and I finally took the time to today to sit down and figure out why, which I will outline below.
I made a quick video here that shows the issue in action -- when I type quickly, I get no autocomplete results. If I type slowly, I get the expected results:
Most of the projects I work on are very large Typescript projects, so results can be slow to return.
Anyways, given this issue, I started tracing both the ale plugin and inside dcc to see if I could figure out where the issue was coming from.
The situation that I will document my findings is from the example video of trying autocomplete magerAsset. Basically, if I type ma and wait, then I will get results back perfectly. If I quickly type mag -- a language server task will be kicked off to ale to search for the results for ma, but before the results get back the g for mag will be typed and no results will be shown.
I added a few different logs around the two plugins to trace what was going on:
What you can see happening here is when we get TextChangedI for mag in vim (that's the log line that says LOCKED, btw) -- we prevent any subsequent searches for results from appearing, or new searches to get queued up. I have to wait until results have returned before I can type again to get new/improved results
I get the sense that locked has some architectural significance here, but at the very least, it feels like we should be queuing up new searches to perform on the updated input if those updates come in while locked. Forcing one to type slowly on large codebases that may take a while to lookup seems a bit fragile?
Ddc randomly stops cycling between the completion candidates when you hold C-n or C-p instead of typing slowly. This does not happen when I'm not using ddc.vim.
Expected
Holding C-n should keep going down and loop back to top, and C-p should go backward, without selecting one of them and stop.
[ddc] Invalid filters are detected!
[ddc] ['converter_remove_overlap', 'matcher_head', 'sorter_rank']
Seems to appear at the beginning of any editing session. It doesn't seem to affect anything and I don't think I have anything configured incorrectly. Based on what I can find in the readme and help, I can't really tell what might've changed. In fact, some of these filters are still referenced in the README (i.e. sorter_rank).
Expected
To not have the error messages, are these filters perhaps deprecated? Or are there new ways of doing things that I need to be aware of?
After a while in a session, I start seeing msgpack timeout errors, and was wondering if there was an expectation here. I am pretty sure it's due to various sources never resolving their completion results. Is this something source authors need to ensure they handle properly? Or is this an error that ddc should suppress?
Expected
Not to see TimeoutErrors in the message logs
Environment Information
ddc version (SHA1): e392213
OS:
macOS
neovim/Vim :version output:
macVim, 8.2, 1-3376
Provide a minimal init.vim/vimrc with less than 50 lines (Required!)
I am continuing to dig in and see if I can find a specific source of the problem, but figured I would start the dialogue about whether it's a plugin or ddc issue.
How to reproduce the problem from neovim/Vim startup (Required!)
using multiple source call ddc#custom#patch_global('sources', ['tabnine','ale','tmux','vim-lsp','buffer','path','around','rg'])
work around : order the source by the engine power call ddc#custom#patch_global('sources', ['tabnine','vim-lsp','ale','tmux','buffer','path','around','rg'])
Warning: I will close the issue without the minimal init.vim and the reproduction instructions.
Problems summary
Repetition . does not work if a user inserts a ddc completion word that contains—or in this case starts with—indentkeys, e.g., \bibitem and \item for tex, see runtime/indent/tex.vim#L153 and runtime/indent/tex.vim#L168.
health#lsp#check
========================================================================
## Checking language server client configuration
- INFO: LSP log level : WARN
- INFO: Log path: /home/kwsm/.cache/nvim/lsp.log
- INFO: Log size: 0 KB
health#nvim#check
========================================================================
## Configuration
- OK: no issues found
## Performance
- OK: Build type: RelWithDebInfo
## Remote Plugins
- OK: Up to date
## terminal
- INFO: key_backspace (kbs) terminfo entry: key_backspace=\177
- INFO: key_dc (kdch1) terminfo entry: key_dc=\E[3~
- INFO: $VTE_VERSION='6203'
- INFO: $COLORTERM='truecolor'
health#provider#check
========================================================================
## Clipboard (optional)
- WARNING: No clipboard tool found. Clipboard registers (`"+` and `"*`) will not work.
- ADVICE:
- :help |clipboard|
## Python 2 provider (optional)
- WARNING: No Python executable found that can `import neovim`. Using the first available executable for diagnostics.
- ERROR: Python provider error:
- ADVICE:
- provider/pythonx: Could not load Python 2:
python2 not found in search path or not executable.
python2.7 not found in search path or not executable.
python2.6 not found in search path or not executable.
python not found in search path or not executable.
- INFO: Executable: Not found
## Python 3 provider (optional)
- INFO: `g:python3_host_prog` is not set. Searching for python3 in the environment.
- INFO: Executable: /usr/bin/python3
- INFO: Python version: 3.9.2
- INFO: pynvim version: 0.4.3
- OK: Latest pynvim is installed.
## Python virtualenv
- OK: no $VIRTUAL_ENV
## Ruby provider (optional)
- WARNING: `ruby` and `gem` must be in $PATH.
- ADVICE:
- Install Ruby and verify that `ruby` and `gem` commands work.
## Node.js provider (optional)
- WARNING: `node` and `npm` (or `yarn`) must be in $PATH.
- ADVICE:
- Install Node.js and verify that `node` and `npm` (or `yarn`) commands work.
## Perl provider (optional)
- ERROR: perl provider error:
- ADVICE:
- "Neovim::Ext" cpan module is not installed
health#treesitter#check
========================================================================
## Checking treesitter configuration
- INFO: Runtime ABI version : 13
- OK: Loaded parser for c: ABI version 13
health#denops#check
========================================================================
- INFO: Supported Deno version: `1.11.0`
- INFO: Detected Deno version: `1.14.0`
- OK: Deno version check: passed
- INFO: Supported Neovim version: `0.4.4`
- INFO: Detected Neovim version: `0.6.0`
- OK: Neovim version check: passed
- INFO: Denops status: `running`
- OK: Denops status check: passed
Provide a minimal init.vim/vimrc with less than 50 lines (Required!)
Warning: I will close the issue without the minimal init.vim and the
reproduction instructions.
Problems summary
Typing keys quickly may not open the ddc completion window correctly.
It seems to be reproduced when there are many candidates.
I'm using skkeleton here for reproduction, but I think it's a problem that can occur with other sources.
Thanks.
Expected
Even if you type the key quickly, popups open correctly.
Warning: I will close the issue without the minimal init.vim and the
reproduction instructions.
Problems summary
How do I prevent whitespace character completion? I set 'minAutoCompleteLength': 0, but I don't want <space> ,<cr> and other whitespace character to trigger completion. What should I do ?
Expected
Environment Information
ddc.vim version (SHA1):
latest
denops.vim version (SHA1):
latest
deno version(deno -V output):
deno 1.14.1
OS:
windows wsl ubuntu 20.04
neovim/Vim :version output:
NVIM v0.5.0
:checkhealth or :CheckHealth result(neovim only):
health#denops#check
========================================================================- INFO: Supported Deno version: `1.14.0`- INFO: Detected Deno version: `1.14.1`- OK: Deno version check: passed
- INFO: Supported Neovim version: `0.5.0`- INFO: Detected Neovim version: `0.5.0`- OK: Neovim version check: passed
- INFO: Denops status: `running`- OK: Denops status check: passed
health#lspconfig#check
========================================================================
Checking language server protocol configuration
- INFO: clangd: configuration checked.
health#nvim#check
========================================================================
Configuration
- OK: no issues found
Performance
- OK: Build type: RelWithDebInfo
Remote Plugins
- OK: Up to date
terminal
- INFO: key_backspace (kbs) terminfo entry: key_backspace=\177
- INFO: key_dc (kdch1) terminfo entry: key_dc=\E[3~
health#provider#check
Provide a minimal init.vim/vimrc with less than 50 lines (Required!)
health#nvim#check
========================================================================
## Configuration
- OK: no issues found
## Performance
- OK: Build type: RelWithDebInfo
## Remote Plugins
- OK: Up to date
## terminal
- INFO: key_backspace (kbs) terminfo entry: key_backspace=\177
- INFO: key_dc (kdch1) terminfo entry: key_dc=\E[3~
- INFO: $VTE_VERSION='6203'
- INFO: $COLORTERM='truecolor'
health#provider#check
========================================================================
## Clipboard (optional)
- WARNING: No clipboard tool found. Clipboard registers (`"+` and `"*`) will not work.
- ADVICE:
- :help |clipboard|
## Python 2 provider (optional)
- WARNING: No Python executable found that can `import neovim`. Using the first available executable for diagnostics.
- ERROR: Python provider error:
- ADVICE:
- provider/pythonx: Could not load Python 2:
python2 not found in search path or not executable.
python2.7 not found in search path or not executable.
python2.6 not found in search path or not executable.
/home/kwsm/bin/python is Python 3.9 and cannot provide Python 2.
- INFO: Executable: Not found
## Python 3 provider (optional)
- INFO: `g:python3_host_prog` is not set. Searching for python3 in the environment.
- INFO: Executable: /usr/bin/python3
- INFO: Python version: 3.9.2
- INFO: pynvim version: 0.4.3
- OK: Latest pynvim is installed.
## Python virtualenv
- OK: no $VIRTUAL_ENV
## Ruby provider (optional)
- WARNING: `ruby` and `gem` must be in $PATH.
- ADVICE:
- Install Ruby and verify that `ruby` and `gem` commands work.
## Node.js provider (optional)
- WARNING: `node` and `npm` (or `yarn`) must be in $PATH.
- ADVICE:
- Install Node.js and verify that `node` and `npm` (or `yarn`) commands work.
## Perl provider (optional)
- ERROR: perl provider error:
- ADVICE:
- "Neovim::Ext" cpan module is not installed
health#treesitter#check
========================================================================
## Checking treesitter configuration
- INFO: Runtime ABI version : 13
- OK: Loaded parser for c: ABI version 13
health#denops#check
========================================================================
- INFO: Supported Deno version: `1.11.0`
- INFO: Detected Deno version: `1.12.2`
- OK: Deno version check: passed
- INFO: Supported Neovim version: `0.4.4`
- INFO: Detected Neovim version: `0.6.0`
- OK: Neovim version check: passed
- INFO: Denops status: `running`
- OK: Denops status check: passed
health#deoplete#check
========================================================================
## deoplete.nvim
- OK: exists("v:t_list") was successful
- OK: has("timers") was successful
- OK: has("python3") was successful
- OK: Require Python 3.6.1+ was successful
- OK: Require msgpack 1.0.0+ was successful
- INFO: If you're still having problems, try the following commands:
- $ export NVIM_PYTHON_LOG_FILE=/tmp/log
- $ export NVIM_PYTHON_LOG_LEVEL=DEBUG
- $ nvim
- $ cat /tmp/log_{PID}
- and then create an issue on github
Provide a minimal init.vim/vimrc with less than 50 lines (Required!)
" Your minimal init.vim/vimrcsetruntimepath-=~/.config/nvimsetruntimepath-=~/.config/nvim/aftersetruntimepath-=~/.local/share/nvim/sitesetruntimepath-=~/.local/share/nvim/site/aftersetruntimepath+=/path/to/ddc.vimsetruntimepath+=/path/to/denops.vimsetruntimepath+=/path/to/deoplete.nvim
callddc#enable()
letg:deoplete#enable_at_startup =1
How to reproduce the problem from neovim/Vim startup (Required!)
nvim -u vimrc - <<< foobarbaz
o**<ESC>
ifo ← foobarbaz is inserted (deoplete around source)
Vim's complete item accepts user_data, which is snake case, but in ddc, user data is defined as camel case like this. Because of this mismatch of name, user_data is not passed to Vim.
Converting Candidates' userData to user_data or changing Candidate's type is needed.
I configured ddc.vim and vim-lsp as source. When I edited a file in a "go.mod" project, <Tab> can trigger a complete as expected. But there's no complete when i insert a dot
I am writing ddc-ctags and want to add a feature to specify a path to ctags executable. There are several kinds of “Ctags”'s, but the latest Universal Ctags is the one I want to use in this plugin.
So I need to test the executable the user set in sourceParams, but it is annoying that it runs tests every time gatherCandidates() is called.
If onInit() can have sourceParams, it needs to test only once.
nvim: health#nvim#check
========================================================================
## Configuration
- OK: no issues found
## Performance
- OK: Build type: Release
## Remote Plugins
- OK: Up to date
## terminal
- INFO: key_backspace (kbs) terminfo entry: key_backspace=^H
- INFO: key_dc (kdch1) terminfo entry: key_dc=\E[3~
- INFO: $TERM_PROGRAM='Hyper'
- INFO: $COLORTERM='truecolor'
provider: health#provider#check
========================================================================
## Clipboard (optional)
- OK: Clipboard tool found: pbcopy
## Python 2 provider (optional)
- INFO: pyenv: Path: /opt/homebrew/Cellar/pyenv/2.3.1/libexec/pyenv
- INFO: pyenv: Root: /Users/uhooi/.pyenv
- WARNING: No Python executable found that can `import neovim`. Using the first available executable for diagnostics.
- ERROR: Python provider error:
- ADVICE:
- provider/pythonx: Could not load Python 2:
python2 not found in search path or not executable.
python2.7 not found in search path or not executable.
python2.6 not found in search path or not executable.
python not found in search path or not executable.
- INFO: Executable: Not found
## Python 3 provider (optional)
- INFO: pyenv: Path: /opt/homebrew/Cellar/pyenv/2.3.1/libexec/pyenv
- INFO: pyenv: Root: /Users/uhooi/.pyenv
- WARNING: No Python executable found that can `import neovim`. Using the first available executable for diagnostics.
- ERROR: Python provider error:
- ADVICE:
- provider/pythonx: Could not load Python 3:
/opt/homebrew/bin/python3 does not have the "neovim" module. :help provider-python
python3.10 not found in search path or not executable.
/opt/homebrew/bin/python3.9 does not have the "neovim" module. :help provider-python
python3.8 not found in search path or not executable.
python3.7 not found in search path or not executable.
python3.6 not found in search path or not executable.
python not found in search path or not executable.
- INFO: Executable: Not found
## Python virtualenv
- OK: no $VIRTUAL_ENV
## Ruby provider (optional)
- INFO: Ruby: ruby 2.6.8p205 (2021-07-07 revision 67951) [universal.arm64e- darwin21]
- WARNING: `neovim-ruby-host` not found.
- ADVICE:
- Run `gem install neovim` to ensure the neovim RubyGem is installed.
- Run `gem environment` to ensure the gem bin directory is in $PATH.
- If you are using rvm/rbenv/chruby, try "rehashing".
- See :help g:ruby_host_prog for non-standard gem installations.
## Node.js provider (optional)
- INFO: Node.js: v16.15.1
- WARNING: Missing "neovim" npm (or yarn) package.
- ADVICE:
- Run in shell: npm install -g neovim
- Run in shell (if you use yarn): yarn global add neovim
## Perl provider (optional)
- ERROR: perl provider error:
- ADVICE:
- "Neovim::Ext" cpan module is not installed
vim.lsp: require("vim.lsp.health").check()
========================================================================
- INFO: LSP log level : WARN
- INFO: Log path: /Users/uhooi/.cache/nvim/lsp.log
- INFO: Log size: 83 KB
vim.treesitter: require("vim.treesitter.health").check()
========================================================================
- INFO: Runtime ABI version : 13
Provide a minimal init.vim/vimrc with less than 50 lines (Required!)