निर्देशिका सिम्कलिन को प्रतिस्थापित करके कॉन्फ़िगर टॉगल करें
मेरे पास सेटअप है:
❯ tree -L 2 ~/.vim-configs
~/.vim-configs
├── nathanl
│ ├── .git
│ ├── gvimrc
│ ├── pack
│ └── vimrc
├── ryanb
│ ├── autoload
│ ├── ...
│ └── vimrc
└── minimal
├── autoload
├── cache
├── doc
├── plugin
└── vimrc
❯ ls -l ~/.vim
lrwxr-xr-x 1 hotschke staff 42 Apr 3 16:35 .vim -> /Users/hotschke/.vim-configs/minimal
यदि आप किसी भिन्न कॉन्फ़िगरेशन में बदलना चाहते हैं, तो आपको बस निष्पादित करना होगा
❯ ln -snf ~/.vim-configs/configX ~/.vim
वैकल्पिक: कॉन्फ़िगरेशन स्विच करने के लिए टैब पूर्ण के साथ शेल फ़ंक्शन
यदि आप महत्त्वाकांक्षी हैं, तो आप इस अतिसुंदर बनाने के लिए स्वत: पूर्णता के साथ एक न्यूनतम शेल फ़ंक्शन लिख सकते हैं। उदाहरण के लिए यदि आप zsh का उपयोग करते हैं, तो आप उपयोग कर सकते हैं
# Swim - Switch Vim Configs
compdef '_path_files -/ -W ~/.vim-configs' swim
function swim {
if [ $# -eq 0 ]
then
zmodload zsh/stat
active=$(stat +link "$HOME/.vim")
echo "Swimming with ${${active}:t}"
echo "$HOME/.vim -> $active"
zmodload -u zsh/stat
else
echo "Swimming with $1"
ln -snfv ~/.vim-configs/$1 ~/.vim
fi
}
यह पहले से ही टैब पूर्णता प्रदान करता है और आपके फाइल सिस्टम में हर जगह काम करता है:
❯ pwd
<somewhere in your filesystem not necessarily $HOME or $HOME/.vim>
❯ swim <Tab>
-- directory --
minimal/ nathanl/ ryanb/
❯ swim minimal
Swimming with minimal
/Users/hotschke/.vim -> /Users/hotschke/.vim-configs/minimal
❯ swim
Swimming with minimal
/Users/hotschke/.vim -> /Users/hotschke/.vim-configs/minimal
(फंक्शन का नाम https://github.com/dawsbot/swim से चुराया गया )