我想对命名寄存器进行某种自动完成。
如果我尝试访问一个("或CTRL+ ...),则应打开r类似于行完成(CTRL+ )的完成。l未使用/空闲寄存器的一些漂亮的可视化也会很好。
有一个很好的解决方案吗?
我想对命名寄存器进行某种自动完成。
如果我尝试访问一个("或CTRL+ ...),则应打开r类似于行完成(CTRL+ )的完成。l未使用/空闲寄存器的一些漂亮的可视化也会很好。
有一个很好的解决方案吗?
挂钩到内置命令(如"和Ctrl+ r)是困难的,因为 Vim 处于等待寄存器名称的特殊子模式。我使用以下""映射(通常是无操作的)来刷新我的记忆:
" ["x][N]"" List contents of the passed register / [N] named
" registers / all registers (that typically contain
" pasteable text).
nnoremap <silent> <expr> "" ':<C-u>registers ' . (v:register ==# '"' ? (v:count ? strpart('abcdefghijklmnopqrstuvwxyz', 0, v:count1) : '"0123456789abcdefghijklmnopqrstuvwxyz*+.') : v:register) . "<CR>"
我最近创建了插件https://github.com/imomaliev/registers.vim
使用您最喜欢的插件管理器(如 Plug)安装它
Plug 'imomaliev/registers.vim'
Аnd 之后,您可以<C-x><C-r>
在插入模式下进行操作,并且将调用带有寄存器的完成菜单。