2010-09-13 13 views
45

मुझे विम में कई लाइनों को इंडेंट करने के तरीके पर कई जवाब मिल गए हैं, मैं जानना चाहता हूं कि एक लाइन कैसे लेनी है और इसे एक से अधिक बार इंडेंट करना है। वास्तव में, मैं निम्न आदेश के संक्षिप्त संस्करण हैं: ">>>>>>>>>>" (। यही कारण है कि 10 सही ब्रैकेट "अधिक से अधिक" संकेत है)मैं vi या vim में एक बार कई पंक्तियों को कैसे इंडेंट कर सकता हूं?

+10

अच्छी तरह से, आप अंतिम आदेश को दोहराने के लिए '.' का उपयोग कर सकते हैं, इसे '>> ....' – meagar

+0

पर छोटा कर सकते हैं आप' : >>>>> ' – meagar

उत्तर

69

का चयन करें कि आप क्या चाहते (आमतौर पर वी या शिफ्ट + वी) तो 5> टाइप करें।

यदि आपको एक ही चयन को ठीक करने या दोहराने की आवश्यकता है, तो जीवी का उपयोग करें।

+6

दबा सकते हैं क्यों Shift + v? वी अकेले ठीक काम करेगा। – strager

+10

बस वरीयता का मामला, मुझे चयनित पूरी लाइन देखना पसंद है। – ldog

11

आप v दबाकर वर्तमान लाइन का चयन कर सकते हैं, और फिर वर्तमान पंक्ति 5 बार इंडेंट करने के लिए 5> टाइप करें, > 10 बार दबाए जाने के बराबर।

+2

वर्तमान पंक्ति 'वी' है, नहीं' v' – Daenyth

+6

डेनथ सही है, लेकिन यह मंथन है। आपको केवल दृश्य मोड में होना है; चाहे इस मामले में लाइन-चयन या अप्रासंगिक है। – Jay

8

इंडेंट एक बार उपयोग करते हैं। पिछली कमांड को फिर से करने या इसे पूर्ववत करने के लिए।

9

"How do I indent multiple lines quickly in vi" के उत्तरों में से एक ने मुझे विजुअल मोड को संशोधित करने के लिए दृश्य मोड में > को रीमेप करने के लिए एक साफ चाल दिखायी। अपने .vimrc ...

vnoremap < <gv 
vnoremap > >gv 

तो मैं बस लाइन (या लाइनें) आप इंडेंट और उचित दिशा प्रेस रूप में कई बार के रूप में आप चाहते हैं करना चाहते हैं।

+0

यदि आप इसे दृश्य मोड में करते हैं तो यह एक अच्छी चाल है, और मुझे बाद में चयन देखना पसंद है, लेकिन मुझे इसका उपयोग करना पसंद है। प्रारंभिक संशोधन के बाद, जो केवल सामान्य मोड में है। मैं इसे अपने .vimrc में जोड़ रहा हूं लेकिन उन्हें और पर मैपिंग कर रहा हूं। – Pif

0

vim मदद से: कमांड: :help >

एक लाइन कई 'shiftwidth के ले जाने के लिए, दृश्य मोड या का उपयोग करें।

उदाहरण के लिए:

Vjj4>   move three lines 4 indents to the right 
    :<<<   move current line 3 indents to the left 
    :>> 5   move 5 lines 2 indents to the right 
    :5>>   move line 5 2 indents to the right 

या बस, >> और सामान्य मोड में . साथ आदेश को दोहराएँ।

संबंधित मुद्दे