使用默认的vimrc(来自$VIMRUNTIME/vimrc_example.vim),默认情况下,CTRL-N和CTRL-P会在我打开的缓冲区中搜索完成选项。这对我来说很好。有时候,我会切换补全模式(例如,使用CTRL-X CTRL-F来开始进行文件名补全),但我不知道如何切换回默认模式。提供的选项(如用于关键字本地补全的CTRL-X CTRL-N)似乎都没有完全相同的工作方式。那么,如何恢复到检查打开的缓冲区呢?
$VIMRUNTIME/vimrc_example.vim
CTRL-N
CTRL-P
CTRL-X CTRL-F
CTRL-X CTRL-N
41ik7eoe1#
从vim的文档中:可完成以下操作:
1. Whole lines |i CTRL-X CTRL-L| 2. keywords in the current file |i CTRL-X CTRL-N| 3. keywords in 'dictionary' |i CTRL-X CTRL-K| 4. keywords in 'thesaurus', thesaurus-style |i CTRL-X CTRL-T| 5. keywords in the current and included files |i CTRL-X CTRL-I| 6. tags |i CTRL-X CTRL-]| 7. file names |i CTRL-X CTRL-F| 8. definitions or macros |i CTRL-X CTRL-D| 9. Vim command-line |i CTRL-X CTRL-V| 10. User defined completion |i CTRL-X CTRL-U| 11. omni completion |i CTRL-X CTRL-O| 12. Spelling suggestions |i CTRL-X s| 13. keywords in 'complete' |i CTRL-N|
然后它说(强调我):...键入CTRL-X和一个CTRL-X命令即可进入CTRL-X模式。**键入一个不是有效CTRL-X模式命令的键即可退出CTRL-X模式。**有效键包括CTRL-X命令本身、CTRL-N(下一个)和CTRL-P(上一个)。
lmvvr0a82#
从:h ins-completion开始:键入CTRL-X和CTRL-X命令之一可进入CTRL-X模式。键入不是有效CTRL-X模式命令的键可退出CTRL-X模式。有效键包括CTRL-X命令本身、CTRL-N(下一个)和CTRL-P(上一个)。因此,基本上,你必须退出CTRL-X模式才能切换到通用补全。这可以通过<C-e>(转义补全的默认键)或任何其他尚未在该上下文中使用的<C-something>来完成:<C-ABCGHJMPQRSWZ> .
:h ins-completion
CTRL-X
<C-e>
<C-something>
<C-ABCGHJMPQRSWZ>
svgewumm3#
这个问题我已经遇到很多次了。在WSL中,我不能直接杀死终端,上面的建议对我不起作用。很可能我做了C-x,在恐慌中(作为条件反射)我做了C-s。溶液为C-q
3条答案
按热度按时间41ik7eoe1#
从vim的文档中:
可完成以下操作:
然后它说(强调我):
...键入CTRL-X和一个CTRL-X命令即可进入CTRL-X模式。**键入一个不是有效CTRL-X模式命令的键即可退出CTRL-X模式。**有效键包括CTRL-X命令本身、CTRL-N(下一个)和CTRL-P(上一个)。
lmvvr0a82#
从
:h ins-completion
开始:键入CTRL-X和CTRL-X命令之一可进入CTRL-X模式。键入不是有效CTRL-X模式命令的键可退出CTRL-X模式。有效键包括CTRL-X命令本身、CTRL-N(下一个)和CTRL-P(上一个)。
因此,基本上,你必须退出
CTRL-X
模式才能切换到通用补全。这可以通过<C-e>
(转义补全的默认键)或任何其他尚未在该上下文中使用的<C-something>
来完成:<C-ABCGHJMPQRSWZ>
.svgewumm3#
这个问题我已经遇到很多次了。在WSL中,我不能直接杀死终端,上面的建议对我不起作用。很可能我做了C-x,在恐慌中(作为条件反射)我做了C-s。
溶液为C-q