4

Launch Vim as vanilla

 1 year ago
source link: https://hanleylee.com/articles/lauchn-vim-as-vanilla/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

Launch Vim as vanilla

WaMa

有时我们可能会需要 vim 加载任何插件进行启动, vim 在这方面也提供了充分的自定义选项, 根据不同需要, 可以通过不同的方式达到目的

为了尽可能清楚详尽的剖析它们的区别, 我做了如下表格

vim_rtp = /usr/share/vim/vimfiles, /usr/share/vim/vim82, /usr/share/vim/vimfiles/after

user_rtp = /.vim,/.vim/after

vim_defaults_load = /usr/share/vim/vim82/defaults.vim, /usr/share/vim/vim82/filetype.vim, /usr/share/vim/vim82/ftplugin.vim, /usr/share/vim/vim82/indent.vim, /usr/share/vim/vim82/syntax/**/*.vim

vim_user_load = ~/.vim/ftdetect/**/*.vim

method&rtpload vim plugin(such as netrw)load user plugin
vim -u NONEvim_rtp + user_rtpNONENONE
vim -u DEFAULTSvim_rtp + user_rtpvim_defaults_loadvim_user_load
vim -u NORCvim_rtp + user_rtpallall(no ~/.vimrc)
vim --cleanvim_rtpvim_defaults_loadNONE
vim --clean --cmd "set loadplugins"vim_rtpallNONE
HOME=/tmp/vim_tmp vimvim_rtp + user_rtpallallfile under /tmp/vim_tmp

以上结果可以使用 echo &rtp:scriptnames 进行输出验证

单独测试某一插件

如果我们要测试一个插件的 bug, 那么最好就是使用一个干净的 vim 环境, 然后只加载此插件, 这时就可以使用 HOME=~/vim_test_home vim 这种方式了.

在这种方式下, 我们可以在 ~/vim_test_home 文件夹中只添加某一插件的相关配置, 不设任何自定义功能, 这样可以快速准确判断出该 bug 是否属于该插件

快速验证 vim 的一个默认功能

这时我们可以使用 vim --clean --cmd "set loadplugins". 为什么? 因为这样不仅可以不加载任何用户自定义的配置, 还能加载 vim 的默认插件 (比如 netrw)

一些其他启动选项

  • vim [option] [files]
    • -N: nocompatible mode
    • -i NONE: without reading your viminfo file

在 shell 环境中设置 alias

另外为了方便, 可以在 ~/.zshrc 中设置如下 alias

  • alias vn='vim -u NONE -U NONE -N -i NONE'
  • alias vc='vim --clean --cmd "set loadplugins"'
  • alias vt='HOME=~/vim_test_home vim'

load plugin at anytime

我们可以使用 runtime! plugin/**/*.vim 来加载runtimepath 下所有子文件夹plugin 下的 vim 文件


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK