因此,在插入模式下,如果您在拼写错误的单词上按 ctrl-x s,您会得到一个格式精美的拼写建议弹出菜单。这太棒了。
然而,正常模式下的类似命令 (z=) 给出了一个平淡无奇的纯文本列表,占据了整个屏幕。
我通过在我的 .vimrc 中添加以下键绑定(bind)部分解决了这个问题:nnoremap <Leader>s ea<C-X><C-S>
这工作得很好,在正常模式下点击 s 会给我同样的下拉菜单......唯一的问题是我现在在所有内容结束时都处于插入模式。有没有办法让下拉样式选择并在替换全部完成后进入正常模式?
最佳答案
你不能直接做。您正在考虑的弹出菜单专门称为“插入模式完成”。
但是,您已经完成了一半,通过映射一个进入插入模式并开始完成的键。现在您所需要的只是映射一个选择条目的键(如“输入”键)以退出插入模式。
您应该测试 pumvisible()
的返回值在您的映射中,以防止它在您不想要时触发。示例(来自评论):
inoremap <expr> <CR> pumvisible() ? "\<C-y><Esc>" : "\<CR>"
也许您还可以设置一个变量或其他东西,或者使用一个您不会使用的键来结束实际的插入模式完成。
关于linux - 如何使 z= 在 vim 拼写检查中看起来像 ctrl-x s,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25777205/