मैं एक सूची आइटम में सभी लाइनों को इंडेंट करने के लिए विम को कैसे प्राप्त कर सकता हूं - न केवल दूसरा?


17

nविम की formatoptionsसेटिंग का विकल्प पहली पंक्ति के इंडेंटेशन से मिलान करने के लिए किसी सूची आइटम की दूसरी पंक्ति को इंडेंट करेगा। हालांकि, तीसरी और बाद की लाइनें बिना किसी इंडेंटेशन के वापस लौट जाती हैं, इस प्रकार:

1. Doing a list. This is my list. I am writing
   a list. It's quite a long list. It's really
long. I can't believe how long it is. And
this just the first item!

2. Another list item.

मैं वास्तव में इस तरह से सभी लाइनों को इंडेंट करना चाहूंगा:

1. Doing a list. This is my list. I am writing
   a list. It's quite a long list. It's really
   long. I can't believe how long it is. And
   this just the first item!

2. Another list item.

क्या यह संभव है, या तो विम के अपने विकल्पों का उपयोग कर, एक स्क्रिप्ट, या एक बाहरी स्वरूपण कार्यक्रम, जैसे कि बराबर?

जवाबों:


16

मुझे लगता है कि बस 'ऑटिंडेंट' को तय करना चाहिए। यह मेरे लिए करता है।

set ai


2
मेरे लिए भी काम करता है, और मैं इसे अपने आप को नहीं लगाने के लिए बेवकूफ महसूस करता हूं, खासकर यह देखते हुए कि यह 'एन' सेटिंग के लिए दस्तावेज में वहीं है! धन्यवाद।
रिच

@किरा युप। मैं एक मूर्ख हूँ। मुझे लगता है कि मेरा भ्रम यह था कि क्योंकि विम दूसरी पंक्ति को इंडेंट कर रहा था, मैंने माना कि मैंने autoindentपहले से ही स्विच किया था , और यह कि प्रश्न में वर्णित व्यवहार डिज़ाइन किया गया व्यवहार था। मुझे लगता है कि मैनुअल को अधिक स्पष्ट रूप से कहा जा सकता है, हालांकि, खुद जैसे बेवकूफों को लाभ पहुंचाने के लिए। :)
रिच

अधिक गहराई से समाधान के लिए @ अकीरा का उत्तर देखें ।
क्लिंट पच

5

आपके मामले में मैं यह करूंगा:

 :set autoindent       " just for interactive indenting (see answer of @Rich) 
 :set fo+=2n           " :help fo-table
 :set tw=47            " your text shall wrap at xyz

( tw=47.. के लिए महत्वपूर्ण है) और फिर दबाने से एक पैराग्राफ में सुधारgqap

ध्यान दें: मैं =या तो साथ पैराग्राफ reindent सकता है, शायद किसी और को लगा कि बाहर।


मुझे a pप्रारूप लाइनों के लिए प्रस्ताव की याद दिलाने के लिए धन्यवाद । मैं हमेशा सही ब्रेस का उपयोग करता हूं, जो समान है। मत भूलो कि आप एक गिनती जोड़ सकते हैं, उदाहरण के लिए, अगले तीन पैराग्राफ को प्रारूपित करें g q 3 }:।
क्लिंट पच
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.