我可以使用快捷方式持续更改 Vim 设置吗?

我可以使用快捷方式持续更改 Vim 设置吗?

我可以更改 Vim 设置吗坚持不懈使用快捷方式?

假设示例:

nnoremap <script> <F7> :call ChangeConfig()<cr>
function! ChangeConfig()
     set virtualedit=all
endfunction

如果是,我可以保存自己的设置吗?

假设示例:

nnoremap <script> <F8> :call ChangeConfig()<cr>
function! ChangeConfig()
     set mysetting="myvalue"
endfunction

谢谢!

答案1

为了在当前 Vim 会话之外保留选项值,:set必须将相应的命令写入某个配置文件。

全局持久性

Vim 实际上提供了一个持久的选项全部当前选项(以及更多,如打开的文件),称为会议。持久化的内容由 控制'sessionoptions'(它需要包含options)。持久化由:mksession和控制:source;您可以通过 自动化这些操作:autocmds

选择的坚持

如果您只想保留某些选项,则必须自行执行此操作。您可以编写/更新部分内容~/.vimrc,但使用单独的插件文件更简单:

nnoremap <script> <F7> :call ChangeConfig()<cr>
function! ChangeConfig()
    set virtualedit=all
    call writefile(['set virtualedit=all', '" more options here'], expand('~/.vim/plugin/persisted_options.vim'))
endfunction

相关内容