为什么直到我输入“:so~/.vimrc”后~/.vimrc 才生效?

为什么直到我输入“:so~/.vimrc”后~/.vimrc 才生效?

我只想更改标签大小。我知道文件正在加载,因为它显示在 :scriptnames 中,并且我包含了每次打开 vim 时都会运行的 echo。为什么 ~/.vimrc 在启动 vim 时不自动运行?

我正在运行最新版本的 Ubuntu。

~/.vimrc 的内容:

map <C-t><up> :tabr<cr>

map <C-t><down> :tabl<cr>

map <C-t><left> :tabp<cr>

map <C-t><right> :tabn<cr>

set tabstop=4
set shiftwidth=4
echo "LOADED"

答案1

默认情况下,已保存的会话也会存储所有全局配置值和映射。因此,您需要~/.vimrc在加载会话后明确获取更改的来源,或者重新创建/编辑会话。

如果您不更改选项并动态定义映射(仅通过~/.vimrc和插件),则无需将其包含在您保存的会话中。您可以通过以下方式关闭此功能:

:set sessionoptions-=options

其一个很好的副作用是,你存储的会话大小将变得更小。

相关内容