I'm trying to wrap my head around the necessity of the coc plugin, since if I have it installed it still needs the coc-vimtex plugin for LaTeX support (which I get is necessary since not all languages can be build into coc) and this in turn still needs the vimtex Plugin.

Why don't just use the vimtex Plugin alone (it too offers code completion and all the other stuff)? Or did I get it wrong that I need the vimtex plugin to be able to use the coc-vimtex plugin?

  • 1
    Afaik, it’s a “single-point of entry/single-interface” thing, so that instead of an m-to-n problem you have an m-to-1 problem, or something
    – D. Ben Knoble
    Commented Sep 9, 2020 at 23:34
  • Don't quite understand what you mean, but as far as I understand with testing disabling the single extensions and checking what features are missing coc somehow overtakes the completions function of vim and coc-vimtex is then needed so that the completion suggestions of vimtex are displayed in coc, but not sure if this is right.
    – atticus
    Commented Sep 10, 2020 at 8:35

1 Answer 1


The advantage of generic plugins such as CoC is that they work for a wide range of filetypes; for example I normally write most of my code in Go and use the Go Language Server for this (via vim-lsc, which is more or less similar to CoC).

This week I did some C programming though, and by just installing the clangd language server on my system vim-lsc also works with C files: I can use the same commands, mappings, and so forth that I'm used to from using vim-lsc with Go. I have some configuration for it too; for example gd ("go to definition") opens in a new tab or reuses an existing tab if it exists, and with a new "vim-c" plugin I would have to learn the commands and mappings for it, as well as set it up how I like.

The advantage of plugins like vimtex is that it can be more tightly integrated with the language since it's language-specific, and that you get an "IDE in a box" which can be convenient at times. vim-lsc isn't quite enough for full Go support, so I also use a little additional Go plugin; but if I would use vim-go (which is much larger and includes everything, similar to vimtex) then I would have to install just vim-go and be done with it.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.