Skip to content

1. 介绍(about)

lijing00333 edited this page Aug 21, 2025 · 1 revision

基本信息(About)

vim-easycomplete 是一个快速极简的 Vim/Nvim 补全插件,支持 Linux 和 MacOS,配置简单。

核心部分用 rust 实现,确保高性能。它是我个人编程习惯的集合,只包括常用必要功能的最小集合。同时也支持插件架构,可以自己添加新的补全源。在我的个人工作流中(vim & nvim)可以代替 nvim-cmp 和 blink.cmp。

It's a Fast and Minimalism Style Completion Plugin for vim/nvim. The core algorithm is implemented based on rust to achieve high performance. It is a collection of my personal programming habits, including only the smallest set of necessary abilities. It also supports a plugin architecture, allowing you to add new completion sources by yourself. In my personal workflow (vim & nvim), it can replace NVIM-CMP and blink.cmp.

包含的特性:

  • 开箱即用(Ready to use out of the box)
  • 支持 lsp(full lsp support)
  • 简单安装 LSP 服务(easy to install)
  • 支持关键词和字典(buffer keywords and dictionaries support)
  • 代码片段的补全(snippets support)
  • TabNine 补全 (TabNine support)
  • 配合 copilot.nvim 的 DeepSeek/千问/Aone 的代码提示(work together with copilot.nvim for fine AI coding experience powered by Deepseek/Qwen/AoneCopilot)
  • 命令行补全(cmdline complete support)
  • 高性能,可基于 rust 编译(high performance with rust)

和原生 nvim 补全的区别(diff from nvim lsp)

nvim 最新版本支持 lsp 原生的补全能力,但不支持以下能力:

  • 函数参数的行内提示
  • 命令行补全
  • 除 lsp 之外的 buffer、字典和目录补全
  • 幽灵文本
  • 多个补全源的合并输出
  • 自定义输出补全结果

AI Coding

内置了 Tabnine 补全。插件使用 tabnine 的本地模式,以带来更好的体验。通过兼容copilot.nvim实现了多行代码提醒功能,支持国内多个速度较快的补全源。

It has built-in Tabnine completion. The plugin uses the local mode of tabnine to provide a better experience. The multi-line code suggestion was implemented by being compatible with Copilode.nvim.

阿里工程师使用 Aone 以获得最佳的体验。

vim 和 nvim 兼容(Compatibility)

没有用 nvim-cmp 或者 blink.cmp 主要是有兼容需求。

我做了大量降级的体验优化,nvim 中部分功能基于 lua 实现,因此 vim 中只涵盖核心的补全功能。另外,性能耗时最大的 fuzzy 函数也做了 python、vimscript 和 lua 的三种实现,确保向下兼容的同时,获得更好的性能。

The main difference from nvim-cmp and blink.cmp is that I have compatibility requirements for both vim and neovim.

Clone this wiki locally