विम इंडेंटेशन विकल्प
विम मुख्य रूप से इंडेंटिंग आकार के लिए 3 सेटिंग्स का उपयोग करता है:
tabstop
, ts
: जब विम एक फ़ाइल आप कर रहे हैं खोलने में एक सारणीकरण का सामना करना पड़ता है, यह के रूप में {} ts रिक्त स्थान (देखें टैब प्रदर्शित करता है tabstop मदद , या प्रकार :help tabstop
विम में)।
softtabstop
, sts
: आप एक फ़ाइल और प्रेस संपादित कर रहे हैं जब टैब कुंजी, विम (देखें डाला सारणीकरण की चौड़ाई को परिभाषित करने के लिए इस सेटिंग का उपयोग करता softtabstop मदद या लिखने :help softtabstop
विम में)।
shiftwidth
, sw
: स्थानों की संख्या विम का उपयोग करता है जब इंडेंट, या तो autoindent सामान या हमेशा की तरह उपयोग करते हुए >>
, <<
आदेशों। जैसा कि हेपेटाइट ने देखा, यह वह है जो आप इस विशेष मामले में देख रहे थे। और विम के हाल के संस्करण वास्तव में आपको इस विकल्प को परिभाषित नहीं करने की अनुमति देते हैं, shiftwidth
फिर इसके द्वारा परिभाषित मूल्य लेंगे tabstop
। काफी आसान ( बदलाव मदद देखें )।
उदाहरण
उदाहरण के लिए, यदि आप निम्न सेटिंग्स का उपयोग करते हैं:
set sts=4
set ts=2
set sw=8
ये निम्नलिखित व्यवहार का उत्पादन करेंगे:
- फ़ाइल में सारणीकरण सम्मिलित करने से एक इंडेंटिंग 4 रिक्त स्थान होगा।
- जैसा कि आपका
tabstop
2 पर सेट है, यह वास्तव में 2 टैब के बराबर होगा। यह जांचना काफी आसान है, केवल सारणीकरण प्रदर्शित करने के लिए विकल्पों list
और listchars
विकल्पों का उपयोग करें।
- यदि आप एक लाइन का उपयोग करते हुए इंडेंट करते हैं
>>
, तो इंडेंटेशन 8 रिक्त स्थान चौड़ा होगा (इसलिए, tabstop
मूल्य के आधार पर, 4 टेबल्स के बराबर, ऊपर के समान)।
विम इंडेंटेशन सिफारिशें (विम प्रलेखन से)
से tabstop
(मदद :help tabstop
विम में):
There are four main ways to use tabs in Vim:
1. Always keep 'tabstop' at 8, set 'softtabstop' and 'shiftwidth' to 4
(or 3 or whatever you prefer) and use 'noexpandtab'. Then Vim
will use a mix of tabs and spaces, but typing <Tab> and <BS> will
behave like a tab appears every 4 (or 3) characters.
2. Set 'tabstop' and 'shiftwidth' to whatever you prefer and use
'expandtab'. This way you will always insert spaces. The
formatting will never be messed up when 'tabstop' is changed.
3. Set 'tabstop' and 'shiftwidth' to whatever you prefer and use a
|modeline| to set these values when editing the file again. Only
works when using Vim to edit the file.
4. Always set 'tabstop' and 'shiftwidth' to the same value, and
'noexpandtab'. This should then work (for initial indents only)
for any tabstop setting that people use. It might be nice to have
tabs after the first non-blank inserted as spaces if you do this
though. Otherwise aligned comments will be wrong when 'tabstop' is
changed.
मैं व्यक्तिगत रूप से मुख्य रूप से दूसरे समाधान का उपयोग करता हूं, जिसमें 2 रिक्त स्थान हैं।
set ts=2
set sts=2
set et "expand tabs to spaces
ts
में 2, 4 या 8 के रूप में सेटिंग के बीच बहस कर रहे हैं