Vim键映射和默认键盘布局

Vim键映射和默认键盘布局,vim,Vim,我使用两种键盘布局:俄语和英语。我的.vimrc中有以下内容: set keymap=russian-jcukenwin set iminsert=0 问题是,我的一些文件是在打开俄语布局的情况下打开的,而一些文件是在打开英语布局的情况下打开的,我希望这是默认设置。(默认情况下,搜索和正常模式命令以英语输入,这很好。) 这可能与mkview/loadview自动命令有关,但我找不到它 au BufWritePre *.* mkview autocmd BufRead *.* silent lo

我使用两种键盘布局:俄语和英语。我的.vimrc中有以下内容:

set keymap=russian-jcukenwin
set iminsert=0
问题是,我的一些文件是在打开俄语布局的情况下打开的,而一些文件是在打开英语布局的情况下打开的,我希望这是默认设置。(默认情况下,搜索和正常模式命令以英语输入,这很好。)

这可能与mkview/loadview自动命令有关,但我找不到它

au BufWritePre *.* mkview
autocmd BufRead *.* silent loadview

有没有办法在默认情况下强制使用英文布局?

来自
:help:mkview

The output of ":mkview" contains these items:
[...]
3. Restore mappings, abbreviations and options local to the window if
   'viewoptions' contains "options" or "localoptions".  For the options it
   restores only values that are local to the current buffer and values local
   to the window.
[...]

keymap
iminsert
都是缓冲区本地选项,
options
viewoptions
默认值的一部分,明白了!它与
set viewoptions=folds,cursor
一起工作,但我发现在
autocmd之后附加
autocmd BufRead**静默setlocal iminsert=0
更有用。。。loadview
。这会根据需要强制执行
iminsert
选项,并保存所有其他选项。谢谢很高兴看到一个问题有足够的相关信息,可以提前得到完整的答案!