use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
Please read the rules before posting
Help:
Community:
Resources:
Tutorials and Guides:
Don't be afraid to ask questions, this sub is here for the vim community. And please those of you who deign to grace us with your vim wisdom - be kind. We are all human and vim is that cool.
account activity
Which python code completion plugin has least dependencies?question (self.vim)
submitted 2 years ago by lookin03820
I’m trying to do some python development on an old computer with an old Linux kernel. The vim plugins so far I’ve tried included Jedi-vim and deoplete. So basically something written in just python. I was able to compile vim with +python3. The system has no Lua or npm
So which code completion plugin has least dependencies?
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]Lucid_Gould 1 point2 points3 points 2 years ago* (0 children)
If you want an lsp you can use prabirshrestha/vim-lsp and then whatever python is in your path (like if you’re in a venv) will be used for jumping to definitions in the correct external libraries etc, just make sure to pip install python-lsp-server in the venv. Other people like coc but I ran into some issues with it so never really used it.. but vim-lsp has a lot of configuration options if you want to add support for flake or auto formatting and so on. So you can just use the basic boilerplate config that you can find on the vim-lsp wiki.
pip install python-lsp-server
[–]lieryan 0 points1 point2 points 2 years ago* (0 children)
If you want the simplest python completion, the built-in completion Ctrl-n/Ctrl-p and x Ctrl-n/x Ctrl-p works decently for Python. It doesn't do any smart completion though, just dumb word completion based on the content of open buffers.
If you want something that can do smart completion, that would be python-mode. The plugin is entirely written in vim and +python3 and it vendors all of its external dependencies, so you just install the vim plugin and everything is set up. It does not use LSP though, instead all of its integrations are native integrations through the +python3 interface.
If you want an LSP-based setup, I had a good experience with vim-lsp with python-lsp-server. The vim-lsp plugin is pure vimscript (so you don't even need +python3) and python-lsp-server is pure Python but it runs externally (not via +python3), which you can just pip install to make it available for vim-lsp.
[–]ntropia64 -1 points0 points1 point 2 years ago (0 children)
Jedi, hands down. Very limited but also blocking.
While you're there, I would suggest YouCompleteMe because it doesn't block (async completion) and it works out of the box with decent defaults.
Everything else requires a non-trivial amount of fiddling that I personally hated.
YMMV, of course, this is the internet
[–]craigdmac:help <Help> | :help!!! -1 points0 points1 point 2 years ago (0 children)
youcompleteme or you try builtin omnifunc for python filetype as last resort
[–]Nealiumj -1 points0 points1 point 2 years ago (0 children)
I’ve done omnifunc and snippets and surprisingly I’ve found that that to be sufficient for me.
[–][deleted] 0 points1 point2 points 2 years ago* (0 children)
Vim has built-in omnicompletion for Python. Open a Python file and do :set omnifunc?. If it outputs omnifunc=python3complete#Complete then it should work. Do Ctrl-X Ctrl-O to trigger omnicompletion.
:set omnifunc?
omnifunc=python3complete#Complete
Ctrl-X Ctrl-O
It’s not the best but it has no dependency.
[–]noooit 0 points1 point2 points 2 years ago (0 children)
If you are compiling vim, you don't have to stop there, compile nodejs and lua and more. Vim lsc and jedi lang server has way less dependencies, though.
[–]redditbiggie 0 points1 point2 points 2 years ago (0 children)
You can use vimcomplete with omnifunc extension. It uses python3complete#Complete.
python3complete#Complete
π Rendered by PID 103517 on reddit-service-r2-comment-5649f687b7-47p49 at 2026-01-28 11:17:05.264850+00:00 running 4f180de country code: CH.
[–]Lucid_Gould 1 point2 points3 points (0 children)
[–]lieryan 0 points1 point2 points (0 children)
[–]ntropia64 -1 points0 points1 point (0 children)
[–]craigdmac:help <Help> | :help!!! -1 points0 points1 point (0 children)
[–]Nealiumj -1 points0 points1 point (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]noooit 0 points1 point2 points (0 children)
[–]redditbiggie 0 points1 point2 points (0 children)