neoclide / coc.nvim

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

Auto-indentation Incorrect on If/Else statements #402

Closed bmb330 closed 5 years ago

bmb330 commented 5 years ago

Result from CocInfo Run :CocInfo command and paste the content below.

versions

vim version: NVIM v0.3.4 node version: v11.1.0 coc.nvim version: 0.0.51 term: xterm-kitty platform: linux

Error messages

Output channel: snippets

[Info 8:59:58 AM] Loaded 4 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/bib.snippets [Info 8:59:58 AM] Loaded 14 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/all.snippets [Info 8:59:58 AM] Loaded 2 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/bindzone.snippets [Info 8:59:58 AM] Loaded 26 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/blade.snippets [Info 8:59:58 AM] Loaded 47 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/ada.snippets [Info 8:59:58 AM] Loaded 14 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/c.snippets [Info 8:59:58 AM] Loaded 38 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/coffee-jasmine.snippets [Info 8:59:58 AM] Loaded 13 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/coffee-react.snippets [Info 8:59:58 AM] Loaded 19 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/coffee.snippets [Info 8:59:58 AM] Loaded 2 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/crystal.snippets [Info 8:59:58 AM] Loaded 9 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/cpp.snippets [Info 8:59:58 AM] Loaded 0 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/cuda.snippets [Info 8:59:58 AM] Loaded 46 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/cs.snippets [Info 8:59:58 AM] Loaded 115 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/css.snippets [Info 8:59:58 AM] Loaded 70 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/django.snippets [Info 8:59:58 AM] Loaded 8 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/eelixir.snippets [Info 8:59:58 AM] Loaded 79 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/d.snippets [Info 8:59:58 AM] Loaded 2 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/elm.snippets [Info 8:59:58 AM] Loaded 4 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/erlang.snippets [Info 8:59:58 AM] Loaded 19 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/go.snippets [Info 8:59:58 AM] Loaded 1 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/haskell.snippets [Info 8:59:58 AM] Loaded 4 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/help.snippets [Info 8:59:58 AM] Loaded 48 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/eruby.snippets [Info 8:59:58 AM] Loaded 7 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/html_minimal.snippets [Info 8:59:58 AM] Loaded 0 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/htmljinja.snippets [Info 8:59:58 AM] Loaded 108 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/html.snippets [Info 8:59:58 AM] Loaded 64 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/htmldjango.snippets [Info 8:59:58 AM] Loaded 11 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/javascript-angular.snippets [Info 8:59:58 AM] Loaded 13 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/javascript-ember.snippets [Info 8:59:58 AM] Loaded 65 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/java.snippets [Info 8:59:58 AM] Loaded 7 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/javascript-jasmine-arrow.snippets [Info 8:59:58 AM] Loaded 13 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/javascript-node.snippets [Info 8:59:58 AM] Loaded 11 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/javascript-jsdoc.snippets [Info 8:59:58 AM] Loaded 21 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/javascript.snippets [Info 8:59:58 AM] Loaded 30 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/jinja2.snippets [Info 8:59:58 AM] Loaded 8 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/json.snippets [Info 8:59:58 AM] Loaded 0 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/lhaskell.snippets [Info 8:59:58 AM] Loaded 4 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/julia.snippets [Info 8:59:58 AM] Loaded 1 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/ledger.snippets [Info 8:59:58 AM] Loaded 2 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/matlab.snippets [Info 8:59:58 AM] Loaded 15 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/markdown.snippets [Info 8:59:58 AM] Loaded 32 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/objc.snippets [Info 8:59:58 AM] Loaded 32 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/ocaml.snippets [Info 8:59:58 AM] Loaded 14 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/lua.snippets [Info 8:59:58 AM] Loaded 1 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/pandoc.snippets [Info 8:59:58 AM] Loaded 17 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/perl.snippets [Info 8:59:58 AM] Loaded 8 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/php-laravel.snippets [Info 8:59:58 AM] Loaded 44 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/php-phpspec.snippets [Info 8:59:58 AM] Loaded 24 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/php-symfony2.snippets [Info 8:59:58 AM] Loaded 72 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/plsql.snippets [Info 8:59:58 AM] Loaded 5 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/proto.snippets [Info 8:59:58 AM] Loaded 18 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/php.snippets [Info 8:59:58 AM] Loaded 36 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/puppet.snippets [Info 8:59:58 AM] Loaded 40 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/python.snippets [Info 8:59:58 AM] Loaded 37 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/r.snippets [Info 8:59:58 AM] Loaded 0 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/rnoweb.snippets [Info 8:59:58 AM] Loaded 166 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/rails.snippets [Info 8:59:58 AM] Loaded 81 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/robot.snippets [Info 8:59:58 AM] Loaded 20 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/rst.snippets [Info 8:59:58 AM] Loaded 50 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/ruby.snippets [Info 8:59:58 AM] Loaded 6 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/rust.snippets [Info 8:59:58 AM] Loaded 12 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/sh.snippets [Info 8:59:58 AM] Loaded 3 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/snippets.snippets [Info 8:59:58 AM] Loaded 10 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/soy.snippets [Info 8:59:58 AM] Loaded 2 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/supercollider.snippets [Info 8:59:58 AM] Loaded 6 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/tcl.snippets [Info 8:59:58 AM] Loaded 27 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/tex.snippets [Info 8:59:58 AM] Loaded 0 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/typescript.snippets [Info 8:59:58 AM] Loaded 8 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/texmath.snippets [Info 8:59:58 AM] Loaded 3 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/vim.snippets [Info 8:59:58 AM] Loaded 0 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/vue.snippets [Info 8:59:58 AM] Loaded 0 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/xhtml.snippets [Info 8:59:58 AM] Loaded 3 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/xml.snippets [Info 8:59:58 AM] Loaded 2 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/zsh.snippets [Info 8:59:58 AM] Loaded 16 snippets from: /home/brandon/.cache/dein/.cache/init.vim/.dein/UltiSnips/mako.snippets [Info 2/4/2019] Loaded 20 snippets from /home/brandon/.config/coc/extensions/node_modules/coc-java/snippets/java.json [Info 2/4/2019] Loaded 28 snippets from /home/brandon/.config/coc/extensions/node_modules/coc-tsserver/snippets/typescript.json [Debug 9:00:52 AM] resolved: if $1 then $2 elseif $3 then $0 end [Debug 9:00:52 AM] resolved: if $1 then $2 elseif $3 then $4 else $0 end

Output channel: highlight

[Info - 8:59:58 AM] Highlight server running in node v11.1.0

Describe the bug A clear and concise description of what the bug is.

During insert mode, tested in both editing of lua and ruby files, the auto-indentation stops working. Normally while typing an if/else statement, the elseif and else will be un-indented but they are not while "coc.preferences.autoTrigger" is set to "always". Tested with "Trigger" and it works if the popupmenu is not open, but if triggered and the menu is open, same bug persists.

Using after menu disappears does reformat the line or setting coc.preferences.autoTrigger to triggered solves issue if you do not trigger during insert.

To Reproduce Steps to reproduce the behavior:

  1. enter insert mode in a lua or ruby file
  2. type out if statement
  3. add elseif / else section to if statement
  4. trigger completion menu (or have it autotrigger) on else or elseif
  5. Elseif / else not indented correctly

Config for nvim can be found at https://github.com/bmb330/dotfiles/tree/master/nvim

Screenshots If applicable, add screenshots to help explain your problem.

chemzqm commented 5 years ago

I tried your configuration, but it works as expected. the line is indented after I type else elsif end

chemzqm commented 5 years ago

Consider try it without other vim plugins.

bmb330 commented 5 years ago

I disabled all plugins, same issue

chemzqm commented 5 years ago

Unable to reproduce, consider upgrade to latest coc.nvim version and provide a minimal vimrc.

chemzqm commented 5 years ago

I can reproduce it on lua file, but not ruby files.

chemzqm commented 5 years ago

Should be fixed unless suggest.reloadPumOnInsertChar is used.