Saya bisa gunakan vim -u filename
untuk menggunakan filename
bukan default saya .vimrc
. Saya menggunakan metode ini ketika beralih konteks pengguna ( su
) untuk menggunakan saya .vimrc
meskipun berjalan sebagai pengguna super.
Bagaimana saya bisa mencapai hal yang sama juga untuk folder yang secara default ~/.vim
sehingga saya bisa mengarahkan Vim dari baris perintah ke folder alternatif?
Apa yang ingin saya capai
Oke, anggap pengguna joe
( HOME=/home/joe
) dan pengguna root
( HOME=/root
). Pengguna joe
memiliki set alias untuk vim
yang terlihat seperti ini (tetapi awalnya disetel menggunakan $HOME
variabel untuk membuat ini dinamis):
alias vim='vim -p -N -n -i NONE -u "/home/joe/.vimrc"'
Kemudian pengguna joe
melakukan sesuatu di sepanjang garis sudo su -
(tetapi dengan menambahkan sihir), menghasilkan .bashrc
dan barang lainnya /home/joe
untuk dimuat root
. Pengguna root
sekarang memiliki alias yang sama persis untuk vim
ditetapkan seperti yang ditunjukkan di atas.
Masalahnya adalah ini .vimrc
digunakan pada berbagai sistem dan dalam berbagai skenario. Seringkali akun Joe dipanggil joe
, tetapi kadang-kadang akan menjadi sesuatu seperti local.joe
atau apa pun, menghasilkan nilai yang berbeda $HOME
. Jadi sulit mengkodekan jalur absolut ke ~/.vim
folder sepertinya bukan ide yang bagus. Namun, dalam skenario kami di atas pengguna root
tidak memiliki folder /root/.vim
yang, bagaimanapun, diharapkan ada secara default melalui yang dimuat .vimrc
( /home/joe/.vimrc
).
Apa yang ingin saya capai - lebih disukai di baris perintah - adalah untuk mendapatkan Vim untuk menggunakan plugin dll dari bawah /home/joe/.vim
ketika dimulai sebagai root
(dengan asumsi alias
diatur seperti yang ditunjukkan - kasus lain dapat diabaikan). Jika ada beberapa metode dinamis melalui VimScript, berikan pointer. Tetapi menggunakan variabel seperti $HOME
akan mengarah pada tangkapan 22, saya pikir.
ln
. seperti 'mv ~ / .vim ~ / .vim-apapun && ln -s ~ / .vim-apapun ~ / .vim` maka lakukan hal yang sama untuk.vimrc
. bungkus semua itu dengan beberapa bash alias sehingga Anda dapat dengan mudah beralih satu cara atau yang lain