https://github.com/liuchengxu/vim-clap 是一个基于 Vim/NeoVim 最新特性 popup/floating_win 的高颜值高性能模糊查找插件:
-
所谓高颜值,是指基于 popup/floating_win 弹出一个类似 Alfred 的窗口,不再分割(split)窗口,不会扰动当前的窗口布局。自从有了 popup/floating_win 以后,其实只要不是常驻窗口,都应该使用 popup/floating_win 进行展示。由于
-
所谓高性能,是指即将所有耗时操作交给外部的 Rust 扩展,Vim/NeoVim 只是负责展示结果与分派任务,这样即使面对上百万文件,也不会卡住 Vim/NeoVim.
其实类似的插件已经有很多了,从最早期的 ctrlp.vim, unite.vim, 到后期的 command-t, denite.nvim, fzf.vim, leaderf 等等。ctrlp.vim, unite.vim 的优点是纯 vimscript, 但是随之而来的一个无法避免的缺点就是很慢,性能差,一旦出现数据量很大的情况,Vim 可能就卡死了。它们后面的插件在性能上都做了改进,比如 denite.nvim, leaderf 用了 Python