You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+59-58Lines changed: 59 additions & 58 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,32 +1,49 @@
1
1
# Vim-EasyComplete
2
2
3
-
It's a Fast and Minimalism Style Completion Plugin for vim/nvim. There are many excellent vim auto-completion plugins such as [nvim-cmp](https://github.com/hrsh7th/nvim-cmp) and [coc.nvim](https://github.com/neoclide/coc.nvim) etc. But I want a simpler plugin without any redundant configurations.
3
+
It's a Fast and Minimalism Style Completion Plugin for vim/nvim.
Vim-easycomplete is a fast and minimalism style completion plugin for vim/nvim. It aims to be available out of the box on linux and mac. It is implemented in pure VimScript and is extremely simple to configure without installing Node and a bunch of Node modules.
9
+
Vim-easycomplete is a fast and minimalism style completion plugin for both vim and nvim. It aims to be available out of the box on linux and mac. It is implemented in pure VimScript and is extremely simple to configure without installing Node and a bunch of Node modules. Thank [nvim-cmp](https://github.com/hrsh7th/nvim-cmp) and [coc.nvim](https://github.com/neoclide/coc.nvim). They inspired me a lot.
@@ -35,11 +52,36 @@ Vimscript config with vim-plug:
35
52
```vim
36
53
Plug 'jayli/vim-easycomplete'
37
54
Plug 'SirVer/ultisnips'
55
+
" Tabnine aicoding support, default is 1
56
+
" You should install tabnine first by ":InstallLspServer tabnine"
57
+
let g:easycomplete_tabnine_enable = 1
58
+
" Tabnine coding suggestion, default is 1
59
+
let g:easycomplete_tabnine_suggestion = 1
60
+
" Using nerdfont for lsp icons, default is 0
61
+
let g:easycomplete_nerd_font = 1
62
+
" Add window border for pum, default is 1 (for nvim 0.11 or higher)
63
+
let g:easycomplete_winborder = 1
64
+
" Pmenu format, default is ["abbr", "kind", "menu"]
65
+
let g:easycomplete_pum_format = ["kind", "abbr", "menu"]
66
+
" Useful keymap
67
+
noremap gr :EasyCompleteReference<CR>
68
+
noremap gd :EasyCompleteGotoDefinition<CR>
69
+
noremap rn :EasyCompleteRename<CR>
70
+
noremap gb :BackToOriginalBuffer<CR>
38
71
```
39
72
Run `:PlugInstall`.
40
73
41
74
[Full configuration example](custom-config.md).
42
75
76
+
## Useage
77
+
78
+
Use `Tab` to trigger the completion suggestions and select matched items. Use `Ctrl-]` for definition jumping, `Ctrl-t` for jumping back (Same as tags jumping).
79
+
80
+
Other optional configurations:
81
+
82
+
-`set updatetime=150` (lua: `vim.opt.updatetime = 150`) is highly recommended.
83
+
- Menu noselected by default: `setlocal completeopt+=noselect`, (lua: `vim.cmd('setlocal completeopt+=noselect')`)
84
+
43
85
## Commands
44
86
45
87
All commands:
@@ -64,41 +106,6 @@ All commands:
64
106
|`:DenoCache`| Do Deno Cache for downloading modules |
65
107
|`:CleanLog`| close quickfix window |
66
108
67
-
## Configuration
68
-
69
-
The plugin is out of box and config nothing. Use `Tab` to trigger the completion suggestions and select matched items. By default use `Ctrl-]` for definition jumping, `Ctrl-t` for jumping back (Same as tags jumping).
Add filetypes whitelist for specified language plugin. Most of the time, it is not necessary to do so:
215
+
You can add filetypes whitelist for specified language plugin. In most cases, it is not necessary to do so:
213
216
214
217
```vim
215
218
let g:easycomplete_filetypes = {
@@ -224,7 +227,7 @@ let g:easycomplete_filetypes = {
224
227
225
228
### Snippet Support
226
229
227
-
Vim-EasyComplete does not support snippets by default. If you want snippet integration, you will first have to install `ultisnips`. UltiSnips is compatible with Vim-EasyComplete out of the box. UltiSnips required python3 installed.
230
+
Vim-EasyComplete does not integration snippets by default. If you want snippet support, please install `ultisnips`. UltiSnips is compatible with Vim-EasyComplete. UltiSnips required python3 installed.
228
231
229
232
> [Solution of "E319: No python3 provider found" Error in neovim 0.4.4 with ultisnips](https://github.com/jayli/vim-easycomplete/issues/171)
230
233
@@ -269,6 +272,8 @@ You can add custom Pmenu styles by defining these highlight groups:
269
272
-`EasyTabNine`: TabNine kind icon style. links to "Character" by default.
270
273
-`EasySnippets`: TabNine snippets suggestion style. links to "LineNr" by default
271
274
275
+
When `g:easycomplete_winborder` is set to `1`. The guibg of Pmenu will be set to be the same as the Normal guibg.
276
+
272
277
More examples here: [full config example](custom-config.md)
[WIP] If you have bug reports or feature suggestions, please use the [issue tracker](https://github.com/jayli/vim-easycomplete/issues/new). In the meantime feel free to read some of my thoughts at <https://zhuanlan.zhihu.com/p/366496399>, <https://zhuanlan.zhihu.com/p/425555993>, [https://medium.com/@lijing00333/vim-easycomplete](https://dev.to/jayli/how-to-improve-your-vimnvim-coding-experience-with-vim-easycomplete-29o0)
0 commit comments