अपने आप को मास्टर के लिए मजबूर करने का सबसे अच्छा तरीका क्या है? [बन्द है]


205

कुछ समय पहले, मैंने viemu के निर्माता द्वारा एक लेख पढ़ा , जिसमें vi के बारे में बहुत सारी भ्रांतियां दूर कीं , साथ ही साथ यह भी बताया कि यह एक अच्छा विचार क्यों है (और यह पिछले 30 वर्षों से बहुत लोकप्रिय क्यों है)। उसी आदमी के पास एक बहुत बड़ा ग्राफिकल चीट शीट है जो एक समय में कुछ बिट्स को मूल बातें सिखाता है।

मैं सहमत हूं।

मैं वास्तव में पिछले 2 वर्षों से आश्वस्त हूं। लेकिन मैं अभी भी वास्तव में अपने प्राथमिक संपादक के रूप में vi सीखने के लिए खुद को मजबूर करने के लिए आस-पास नहीं गया हूं, सीखने की अवस्था अभी बहुत अधिक है। जब मैं काम करने के लिए नीचे उतरता हूं, तो स्वीकार्य (लेकिन अपने वर्तमान संपादक का उपयोग करके) अब तक लाइन के नीचे जबरदस्त उत्पादकता पर जीत गया है (vi का उपयोग करके)।

क्या किसी के पास सीखने की अवस्था को पाने में मदद करने के लिए कोई अच्छा सुझाव है? यह सीधे आउट टिप्स, कुछ अन्य ट्यूटोरियल या लेख, जो कुछ भी हो सकता है।

संपादित करें: ध्यान दें कि मैं vi के gim / gVim , Cream और MacVim (आदि) वेरिएंट से अवगत हूं । मैंने vi के बारे में अपना प्रश्न vi परिवार के संदर्भ में बताया। सभी महान उत्तरों के लिए धन्यवाद।

अपडेट (अप्रैल 2009)

मैं पिछले दिसंबर से व्यावसायिक जीवन के लिए अपने दिन में विम (अधिक सटीक, मैकविम) का उपयोग कर रहा हूं। मैं वापस नहीं जा रहा हूं :-)

सभी को उनकी विम महारत का सौभाग्य।


14
मैंने विम सीखा क्योंकि मुझे नहीं पता था कि वर्षों पहले डिफ़ॉल्ट संपादक को कैसे बदलना है। ;)
15

चूँकि यह समय के साथ ज्ञान का एक माप है, एक सामान्य रूप से सीखने की अवस्था एक अच्छी बात है, इसका मतलब है कि आप जल्दी सीख रहे हैं। :)
कनवर्टर

बस आज सुबह मैं vi से जूझ रहा था और स्टैक ओवरफ्लो से मुझे विचलित कर रहा था और लो और निहारना, यह शीर्ष के पास है! यह सुनकर बहुत अच्छा लगा कि आप अभी भी इसका उपयोग कर रहे हैं, उम्मीद है कि मैं चार महीनों में आपके जूते में हूँ।
ग्रेग नोए


3
एक साइड नोट के रूप में: क्या आप जानते हैं कि आप लगभग सभी चीज़ों के लिए विम प्लग प्राप्त कर सकते हैं ?! आप फ़ायरफ़ॉक्स के लिए एक विम प्लगइन प्राप्त कर सकते हैं ताकि आपके सभी टेक्स्ट बॉक्स विम की तरह काम करें! हालाँकि यह अधिक दिलचस्प है फिर उपयोगी है। क्या उपयोगी है (हालांकि मैंने अभी तक इसे डाउनलोड नहीं किया है) ग्रहण के लिए विम प्लगइन है। अब यह उपयोगी लगता है!
साठफुटेरसूड

जवाबों:


125

सबसे पहले, आप विम को चुनना चाह सकते हैं; यह एक बहुत ही बेहतर सुविधा है जिसमें vi सब कुछ है।

उस ने कहा, यह सीखने के लिए अनुशासन लेता है। यदि आपके पास एक नौकरी है और उत्पादकता को प्रभावित नहीं कर सकते (बिना निकाल दिए), तो मैं संपादक को सीखने के एकमात्र उद्देश्य के लिए एक सप्ताहांत परियोजना लेने का सुझाव दूंगा। जैसे ही आप काम करते हैं, उसके दस्तावेज को खुला रखें और अनुशासित रहें कि चिकन बाहर न करें। जैसे-जैसे आप अधिक सीखते हैं, कुशल बनते हैं और मांसपेशियों की याददाश्त पर भरोसा करना शुरू करते हैं, इसके साथ रहना उतना कठिन नहीं होगा।

मैं इतने लंबे समय से विम का उपयोग कर रहा हूं कि मुझे यह भी नहीं लगता कि खोज या नेविगेट करने या सहेजने के लिए क्या कुंजी दबाएं। और मेरे हाथ कभी कीबोर्ड नहीं छोड़ते। विम का उपयोग करने के लिए मैं अपने प्रोग्रामिंग करियर में सबसे अच्छे विकल्पों में से एक हूं।


15
मैंने इसे काम पर सीखा है और मैं उत्पादकता की मार से नहीं बच सकता। यह मेरे बगल में एक विमर होने में मदद करता था ताकि वह लगातार सवाल पूछ सके। किसी ऐसे व्यक्ति को खोजें जो अच्छी तरह से जानता हो और उनसे दोस्ती करे! जल्दी से नेवी कीज़ को देखें और मोड्स पर हैंडल करें। 15 मिनट के विखंडू में इसे आज़माएं, आपको मिल जाएगा।
कपफैन

4
मैं सहमत हूं, बस इसे बनाए रखें। एक बार जब आप नैनो या नोटपैड का उपयोग करने के लिए मजबूर हो जाते हैं, तो आपको पता चल जाएगा कि यह आपको पागल कर रहा है!
काइल वाल्श

3
एक वर्ष के लिए विम का उपयोग शुरू करने और रोकने के बाद मैंने पाया कि विम पुस्तक खरीदने और खुद को इससे गुजरने में काफी मदद मिली। इसके अलावा मैं "ऐसा करने के लिए एक तेज़ तरीका हो गया" की मानसिकता रखने की कोशिश करता हूं और लगातार चीजों को बेहतर करने के तरीकों की मदद करने में मदद करता रहता हूं।
जेडी फ्रेजा

2
इसके अलावा, उन सुविधाओं की एक आसान सूची रखें जिन्हें आप आराम से प्राप्त करना चाहते हैं। मैं अब 5 वर्षों के लिए विम का उपयोग कर रहा हूं, और मैंने अभी भी नई चीजों के साथ एक टॉमबॉय नोट रखा है जो मैंने सीखा है कि मैं उपयोग करना याद रखना चाहता हूं।
लुकास ओमान

65

पहली चीज़ जो मैं करता हूँ वह है कागज का एक टुकड़ा या आपके तीर कुंजी और आपके ins / home / end / pgup / down कीज़ पर एक पुस्तक। जिन्हें वीआई में जरूरत नहीं है।

आगे मुझे ctrl + [जब भी आपको हिट से बचने के लिए कहा जाता है, मारने की आदत होगी। यह बहुत तेज़ है और आपको कीबोर्ड से अपने हाथ लेने की आवश्यकता नहीं होगी।

फिर मैं अपना स्क्रैनास्ट देखूंगा:

http://www.youtube.com/watch?v=FcpQ7koECgk

http://www.youtube.com/watch?v=c6WCm6z5msk

http://www.youtube.com/watch?v=BPDoI7gflxM

http://www.youtube.com/watch?v=J1_CfIb-3X4

फिर, बस अभ्यास अभ्यास अभ्यास करें।

संपादित करें तीर कुंजी से बचने का कारण यह है कि वे आपको धीमा कर देते हैं। विम के सबसे बड़े लाभों में से एक वह गति है जो आपको इसकी अनुमति देती है। तीर कुंजी आपको वास्तव में मोडल प्रकृति को गले लगाने से भी रोकती है, जो महारत हासिल होने पर बहुत शक्तिशाली होती है।


मुझे नहीं लगता कि आधुनिक वीआईएम / विम उपयोगकर्ताओं को कर्सर कुंजी से बचना चाहिए। आप शायद कर्सर कुंजी के बिना किसी सिस्टम पर वीआई का उपयोग नहीं करेंगे, इसलिए उनसे बचने के लिए सीखना अनावश्यक है, और वे ठीक (इन दिनों) काम करते हैं।
tialaramex

24
मैंने बचने के लिए अपने कीबोर्ड पर कैप्स-लॉक कुंजी को हटा दिया है। Ctrl + [की तुलना में भी तेज!
क्रिस एटली

मैं कर्सर कुंजी से बचने से सहमत हूं। आंदोलन के लिए वीआई के दृष्टिकोण के फायदों में से एक यह है कि एक बार जब आप इसके आदी हो जाते हैं, तो आप सभी स्थितियों के लिए निर्धारित होते हैं (पढ़ें: एक तंग लैपटॉप लेआउट पर या अजीब ओएसए उर्फ ​​पुराने यूनियनों पर या अजीब टर्मिनलों के माध्यम से दूरस्थ सत्रों में)
webmat

8
जब तक मैंने उन्हें अपने .vimrc: map <Up> "" map <Down> "" map <Right> "" map <Left> "मैप में लेफ्टर्स को तब तक उपयोग नहीं किया, जब तक कि मेरी कलाइयों का आभारी नहीं कि मुझे उस आदत से छुटकारा मिल गया!"
जोहान कोटलिंस्की

2
जॉय, तीर कुंजियाँ वास्तव में उपयोगी होंगी, लेकिन इन्सर्ट मोड को छोड़ना लगभग हमेशा बेहतर होता है, जहाँ आप होना चाहते हैं वहाँ नेविगेट करें और इंसर्ट करें या जो भी करना चाहते हैं उसे करने के लिए बदलें या जो भी करें। भागने से बचना या ^ [अपने हाथों को वहां और पीछे ले जाने से तेज है।
आरोन जेनसेन

39

चरण ०: टाइप करना सीखें। गंभीरता से - अगर आपकी उंगलियों को पता नहीं है कि चाबियाँ कहाँ हैं तो विम एक दर्द होने वाला है। और यहां तक ​​कि अगर आप विम को अस्वीकार करते हैं, तो टच टाइपिंग आपके कंप्यूटर को लिंक घर्षण से मुक्त रखने के लिए निगरानी करने के लिए अपनी प्रोग्रामिंग में सुधार करेगा ( स्टीव येजगे से पूछें )। वहाँ एक है बहुत से सॉफ्टवेयर आप अपने टाइपिंग बेहतर बनाने में मदद कर सकते हैं।

चरण 1: आरंभ करने के लिए विमटॉर का उपयोग करें । यह gvim में है (मदद मेनू के तहत मुझे लगता है) या आप कमांड लाइन पर 'vimtutor' टाइप कर सकते हैं। आपके समय का 30-45 मिनट लगेगा और तब आपकी उंगलियों को vi / vim की मूल बातें पता चलेंगी और आपको अपने कीबोर्ड को खिड़की से बाहर निकालने के लिए बिना फाइलों को संपादित करने में सक्षम होना चाहिए।

चरण 2: हर जगह विम का उपयोग करें। कमांड लाइन पर vim और vi कुंजी बाइंडिंग का उपयोग करने के लिए, अपने वेब ब्राउज़र से, ईमेल बनाने के लिए, अपने IDE में, के लिए यह सवाल देखें । आपको अपनी मांसपेशी मेमोरी में कुंजी बाइंडिंग एम्बेड करने के लिए vim का उपयोग करने की आवश्यकता है।

चरण 3: विम के बारे में अधिक जानें। आप केवल vimtutor के साथ सतह को खरोंच कर देंगे। आप कर सकते हैं इस वीडियो को देखने या पढ़ने इस अनुच्छेद (दोनों "प्रभावी पाठ संपादन के सात आदतें" के बारे में आप कर सकते हैं। पढ़ के बारे में सुझाव दिए गए और चाल पर StackOverflow आप ब्राउज़ कर सकते हैं। Vimtips मेरी सलाह से थोड़ा अधिक जानें अक्सर किया जाएगा -। वहाँ इतना है वहाँ बाहर है कि काटने के आकार का हिस्सा ज्ञान छड़ी बनाने के लिए सबसे अच्छा तरीका होगा।

चरण 4: लाभ :)


2
यदि आप कभी भी कुछ हद तक निपुणता हासिल करना चाहते हैं, तो टच-टाइपिंग बहुत जरूरी है। लेकिन अगर आप वास्तव में कंप्यूटर के सभी सामानों को प्राप्त करना चाहते हैं, तो आपको निश्चित रूप से किसी को यह बताने की आवश्यकता नहीं है कि, आप इसे आसानी से समझ लेंगे। =)
साजे

vimtutor बहुत बढ़िया है :-)
user454083

पर्याप्त और वैज्ञानिक तरीके से मास्टर विम के लिए। मैं इसका उपयोग करने के लिए मास्टर सड़क की ओर मेरा मार्गदर्शन करने की कोशिश करूंगा।मैं अंत तक छड़ी कर सकता हूं।
यिनचोऑनलाइन १६'१

26

मैं वर्षों में विम का ऑन-ऑफ, फिर से उपयोगकर्ता रहा हूं (कभी-कभार sys admin job कर रहा हूं)। मैंने अभी हाल ही में अपना प्रोग्रामिंग कार्य करने में अधिक समय देना शुरू किया। मेरा सुझाव है कि gvim से भी शुरू करें। यह अधिकांश OS वातावरणों के साथ अच्छी तरह से एकीकृत होता है, और (और भी बेहतर), आप माउस पर वापस गिर सकते हैं जब आपको :) की आवश्यकता होती है।

Vim के साथ जाने के लिए, vimtutor (gVim के साथ बंडल) के माध्यम से एक या दो बार चलाएं (एक घंटे या तो लगता है)। मैं यह नहीं बता सकता कि यह मेरे लिए कितना उपयोगी था! विशेष रूप से एक दस्तावेज़ के माध्यम से स्थानांतरित करने के विभिन्न तरीकों के बारे में पहले भाग, और गति कार्यों, आदि के साथ कैसे संपादित क्रियाओं को रिकॉर्ड किया जाता है। उसके बाद, चीजें स्पष्ट हो जाएंगी।

फिर, इसके साथ त्वरित, लघु संपादन करना शुरू करें (नोटपैड-प्रतिस्थापन सामान) 'जब तक आप एक रैपिड क्लिप में उपयोगी संपादन करने के लिए पर्याप्त आरामदायक न हों। फिर इसमें अपने दिनभर के काम करने की कोशिश करें। आप कुछ ही समय में अन्य संपादकों में "अंतिम क्रिया को दोहराएं" कमांड के लिए खुद को पिंग करेंगे!


आप माउस को सामान्य विम में ": सेट माउस = ए" चलाकर उपयोग कर सकते हैं।
स्टीफन पॉलगर 13

19

आपने vi पाठ संपादक पर सीखने की अवस्था को पार करने के लिए अच्छे सुझावों के लिए कहा। पिछले उत्तरों में से कई का सुझाव है कि आप कोई अन्य संपादकों का उपयोग नहीं करते हैं। मुझे लगता है कि अच्छी सलाह है। अधिक आलेखीय संपादक से vi पर स्विच करने के लिए मानसिकता में बदलाव की आवश्यकता है। इसे दृश्य परिवर्तनों के बजाय आदेशों के संदर्भ में सोचने की आवश्यकता है।

मैंने कई वर्षों तक vi के अलावा कुछ भी नहीं इस्तेमाल किया और आपको विश्वास है कि जिस तरह से आप उत्पादक हो सकते हैं वह केवल उन आज्ञाओं को याद करना है जो आप नियमित रूप से उपयोग करते हैं। जिस तरह से मैंने ऐसा किया वह सबसे सामान्य कीबोर्ड कमांड की एक छोटी सूची बनाना था। मैंने इन कमांड को फंक्शन द्वारा समूहीकृत और रंगीन-कोडित किया है, अर्थात मूवर्स, एडिटिंग, सर्चिंग इत्यादि को स्थानांतरित करना , मैं केवल उन सावधानियों में शामिल था जो सबसे अधिक इस्तेमाल की जाने वाली कमांड्स को शामिल करता था जो मुझे नहीं पता था। विचार एक त्वरित संदर्भ बनाने के लिए है जो याद रखने में भी एक सहायता है - उपलब्ध सहायता स्क्रीन को बदलने के लिए नहीं। फिर मैंने इस सूची को मुद्रित किया और इसे अपने मॉनिटर के पीछे की दीवार पर टैप किया ताकि मैं इसे आसानी से देख सकूं। (आपके द्वारा उल्लिखित चित्रमय चीट शीट कुछ के लिए बेहतर काम कर सकती है, लेकिन संभवतः एक संस्मरण की तुलना में बेहतर संदर्भ स्रोत हैं)।

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

कुछ साल पहले मुझे UNIX प्लेटफॉर्म पर काम करने की आवश्यकता थी, जहां vi एकमात्र संपादक उपलब्ध था। मैंने vi पर थोड़ी पॉकेट संदर्भ पुस्तक खरीदी, लेकिन शायद ही इसका उपयोग किया। मैंने सूची बनाना और उन्हें दीवार पर पोस्ट करना समाप्त कर दिया क्योंकि मैंने पहली बार vi का उपयोग किया था। पहले सप्ताह के अंत तक, मैं बहुत आराम से था, भले ही मुझे vi का उपयोग किए हुए पांच साल हो गए हों।


2
मुझे लगता है कि यह उत्कृष्ट सलाह है और यह आईडीई, डीबगर या एक्सेल जैसे किसी अन्य उपकरण को सीखने के लिए समान रूप से लागू होता है।
दिविद्रव

11

मेरे लिए VI एक अच्छा आपातकालीन संपादक है, लेकिन ऐसा कुछ नहीं जो मैं उपयोग करना चाहता हूं यदि कोई अन्य विकल्प उपलब्ध हो। मुझे लगता है कि यह हर किसी के लिए नहीं है, हालांकि, मैं यह नहीं कह रहा हूं कि यह भयानक या कुछ भी है, मैं व्यक्तिगत रूप से एक खोज योग्य यूआई पसंद करता हूं।

लेकिन अगर आपको लिनक्स में कुछ भी करना है तो आपको वास्तव में VI जानना होगा!

तो बस मूल बातें सीखें: i = इन्सर्ट मोड esc = लीव इंसर्ट मोड: wq = सेव एंड लीव: क्व! = सेव न करें और न छोड़े एक्स = जब इन्सर्ट मोड में न हों, तो कैरेक्टर डिलीट करें। / = खोज

यह आपको किसी भी संपादन आपातकाल के माध्यम से मिलेगा। ऐसा कुछ नहीं है जो आप उन कुछ आदेशों (और पाठ्यक्रम के नेविगेशन) के साथ नहीं कर सकते हैं। बाकी आप जरूरत पड़ने पर "Tack on" कर सकते हैं।

हालांकि एक संदर्भ या पुस्तक उपलब्ध रखें - जब आपको VI का उपयोग करने की आवश्यकता होती है, तो आप शायद वेब ब्राउज़ नहीं कर पाएंगे - लेकिन मैन पेज कुछ उपयोगी हो सकता है।


4
: मदद कमांड सबसे उपयोगी में से एक है जिसे आप पहले सीख सकते हैं - जिसे संदर्भ पुस्तकों या वेब की आवश्यकता होती है जब इसे संपादक में बनाया जाता है?
जिग्डन

2
यदि आप उपयोग करना सीखते हैं तो कोई संदर्भ पुस्तक की आवश्यकता नहीं है: सहायता। जैसा कि "आप शायद वेब ब्राउज़ करने में सक्षम नहीं होंगे," लिंक्स और लिंक ब्राउज़रों से परिचित हों। एक चुटकी में, आप उन्हें फाइल सिस्टम ब्राउज़ करने के लिए भी उपयोग कर सकते हैं।
कनवर्टर

11

अपने आप को मजबूर नहीं। प्यार करने के लिए रास्ता है।


11

आपको vim (Vi IMproved) और विशेष रूप से इसके GUI - gVim से शुरू करना चाहिए । जीयूआई में मेनू हैं और विंडोज पर आप कॉपी, कट और पेस्ट शॉर्टकट का उपयोग कर सकते हैं, ताकि आप नोटपैड को तुरंत बदल सकें। और चूंकि मेनू शॉर्टकट दिखाते हैं (विम कमांड्स) आप बहुत कुछ सीख सकते हैं।

एक और चीज जो आपको शुरुआत से करनी चाहिए वह है अपनी आवश्यकताओं के लिए vi को कॉन्फ़िगर करना। उदाहरण के लिए, आप विम को ए में बदल सकते हैं Python IDE । ऐसा करने से, आपके पास किसी अन्य संपादक का उपयोग करने के लिए कोई बहाना नहीं होगा, क्योंकि vi आपको वह सब कुछ प्रदान करेगा जिसकी आपको आवश्यकता है।


टर्मिनल एमुलेटर के आधार पर, गुई का उपयोग करना भी तेज है। :)
अरफांगियन


9

खुद को मजबूर करने का सबसे सरल तरीका हो सकता है कि आप अपने मशीन से अन्य सभी संपादकों को हटा दें। मोह से छुटकारा पाएं :)


9

हर बार जब आप एक जटिल संपादन कार्य कर रहे हों, तो सोचें कि क्या यह करने के लिए अधिक कुशल तरीका है। ज्यादातर बार, जब यह कुछ ऐसा होता है जिसे आप सरल शब्दों में वर्णन कर सकते हैं (जैसे "पाठ के स्वैप पैराग्राफ" या "टिप्पणी लाइनों में एक्स चरित्र के बाद सब कुछ हटा दें"), यह ऐसा कुछ है जो आप विम में सिर्फ एक-दो कीस्ट्रोक्स कर सकते हैं।

कुछ प्रमुख विशेषताएं हैं जो बेहद उपयोगी हैं, और आप हर समय का उपयोग करेंगे। जिन्हें मैं सबसे ज्यादा प्यार करता हूं वे हैं:

  • ब्लॉक चयन (Ctrl-V)
  • मैक्रो रिकॉर्डिंग (q)
  • आभासी संपादन (: सेट ve = सभी)
  • नियमित अभिव्यक्ति
  • बाहरी यूनिक्स कार्यक्रमों के लिए पाइपिंग
  • कुंजी मैपिंग
  • स्वतः पूर्णता (Cp, Cx Cp, Cx Cf)
  • ऑपरेशन + आंदोलन संयोजन (यह आश्चर्यजनक शक्तिशाली है)

अन्य प्रोग्रामर से पूछें कि उन्हें कौन सी सुविधाएँ सबसे उपयोगी लगती हैं और उन्हें अपनाएं जो आपके मस्तिष्क को बेहतर बनाते हैं। अन्य लोगों के विचारों की चोरी करें.vimrc ( यहां मेरा है )


8

संपादित करें: मैंने एक फ़्लैशकार्ड बनाया है जो ऑनलाइन रुचि रखने वाले ऑनलाइन पुनरावृत्ति साइट Flashcarddb.com पर सेट किया गया है

  1. इस तरह के रूप में एक दूरी पर पुनरावृत्ति फ्लैश कार्ड प्रोग्राम का उपयोग करें mnemosyne , SuperMemo , या anki सीखने और अपने दैनिक दिनचर्या में नए आदेश को बनाए रखना शामिल करने के लिए। यह आपके दैनिक संपादक के रूप में विम का उपयोग करने के लिए पर्याप्त नहीं है। इसे मास्टर करने के लिए, आपको उन कोडों को अपने सिर में रखना होगा, समय के इंतजार में जब वे हाथ में कार्य के लिए आदर्श समाधान होंगे।
  2. अनुकूलन के साथ .vimrc बनाए रखें
  3. एक विम प्लगइन लिखें या संपादित करें

8

मैंने थोड़ी देर पहले विम के साथ कुशल संपादन के लिए एक गाइड लिखा था । आपको यह मददगार लग सकता है।

मैं एक मिनट के लिए पीछे हट जाता हूं और अपने आप से पूछता हूं "मैं इस संपादक को क्यों सीखना चाहता हूं? मुझे क्या लगता है कि यह मेरे वर्तमान पाठ संपादक की तुलना में तेज या बेहतर होगा?" फिर उन विशेषताओं को जानें जो आपके लिए Vi (m) को अपरिहार्य बना देंगे।

उदाहरण के लिए, विम का CTags एकीकरण मेरे लिए पूरी तरह से अपरिहार्य है। मैं एक बहुत, बहुत बड़े कोडबेस के साथ काम करता हूं, और एक कीस्ट्रोके में फ़ंक्शन या क्लास परिभाषा में कूदने की क्षमता (चाहे वह किस फ़ाइल में हो) एक बिल्कुल हत्यारा विशेषता है, एक मुझे बिना काम करने में परेशानी होती है।

मैक्रो बनाने के लिए अपनी .vimrc फ़ाइल का उपयोग करें जो सामान्य कार्यों को स्वचालित करती है।

आपका ऑटोपायलट एडिटर-चॉसर उस एडिटर को चुन लेगा जो काम को सबसे तेज और कम से कम मानसिक प्रयास के साथ करेगा। थोड़ा पूर्व-कार्य यह सुनिश्चित करेगा कि संपादक विम है। :-)


1
लिंक अब काम नहीं करता है
eugenevd


6

मेरा सुझाव: छोटा शुरू करो। बस सबसे उपयोगी कमांड के एक छोटे से सेट को याद करके शुरू करें। जब मैंने vi शुरू किया, ये मेरे शीर्ष 10 थे:

  • (Esc) कमांड मोड में लौटने के लिए (सबसे महत्वपूर्ण!)
  • कर्सर के बाद टेक्स्ट जोड़ने के लिए
  • करंट लाइन के अंत में टेक्स्ट जोड़ने के लिए
  • x 1 वर्ण को हटाने के लिए
  • 1 पंक्ति को हटाने के लिए डी.डी.
  • पाठ को बदलने के लिए (अधिलेखित)
  • यू टू अनडू
  • : Q! (दर्ज) बचत के बिना छोड़ने के लिए
  • : w (Enter) सेव करने के लिए
  • बचाने और छोड़ने के लिए ZZ

केवल इन आदेशों का उपयोग करके बहुत सारे मूल संपादन किए जा सकते हैं। एक बार जब आप सहज हो जाते हैं, तो बाकी बहुत मुश्किल नहीं दिखते।

BTW, मैं जोड़ना चाहूंगा कि मैं अपने प्राथमिक पाठ संपादक के लिए vi पर भरोसा करता था, लेकिन अब केवल अगर मुझे करना है। मेरे मामले में, उत्पादकता बेहतर होती है जब मैं Emacs या Visual Studio (कृपया ध्यान दें: "मेरे मामले में") जैसे उपकरणों का उपयोग करता हूं। एक से अधिक टूल आज़माएं और वह चुनें जो आपकी उत्पादकता में सबसे अधिक मदद करता है। सौभाग्य!


ZZ कमांड macvim में काम नहीं करता है
innuendoreplay

5

यह मूर्खतापूर्ण लगता है, लेकिन खेल roguelike (जैसे खेल nethack या Angband ) का उपयोग कर के साथ सहज प्राप्त करने के लिए एक मजेदार तरीका है h/ j/ k/ lकर्सर नेविगेशन के लिए कुंजी।


4

अपने वर्तमान संपादक में उन सभी शॉर्ट-कट्स और सुविधाओं को लिखें, जिनका उपयोग आप काम में कर रहे हैं। फिर शनिवार की सुबह बैठकर Google का उपयोग करें और स्टैक ओवरफ्लो यह पता लगाएं कि vi में से प्रत्येक को कैसे करना है। शायद सबसे अच्छा है यदि आप इसके लिए कागज की एक शीट (या चादरें) का उपयोग करते हैं।

अब अन्य संपादकों को काम पर अक्षम / हटा दें ताकि उन्हें आपकी तुलना पत्रक पर देखने की तुलना में उन्हें ढूंढने और फिर से स्थापित करने में अधिक समय लगे और यह vi में करें - अर्थात आपके पास कोई विकल्प नहीं है।

अंत में, अपने ब्लॉग पर अपने पुराने संपादक से अपने नए के लिए क्रॉसओवर शॉर्टकट की अपनी सूची प्रकाशित करें।

सौभाग्य!


4

X11 का उपयोग न करें ?

$ sudu rm /usr/local/bin/emacs

अपने लॉगिन शेल को vi में बदलें ?

पहले, अपने आप को एड का उपयोग करने के लिए मजबूर करें , फिर vi एक लक्जरी जैसा प्रतीत होगा?

बैश में vi कुंजी बाइंडिंग का उपयोग करें ?

बस हर समय vi का उपयोग करना शुरू करें ?

यह मुझे लगता है कि एक संपादक को सीखना किसी भाषा को सीखने से बहुत अलग नहीं है। विसर्जन सबसे अच्छा काम करता है।

मैं वास्तव में त्वरित संपादन के लिए vi का उपयोग करता हूं या जब मैं किसी कारण से X11 का उपयोग नहीं कर सकता , लेकिन मैं emacs में रहता हूं । वास्तव में शक्तिशाली संपादक सीखने के लिए समय लेने के लायक हैं।


3

मेरी सिफारिश कुछ सरल कार्यक्रमों के साथ आने की है और उन्हें लिखना है, VI का उपयोग करके समाप्त करना शुरू करना है।

ऑड्स हैं, आप पहले से ही सीखने की अवस्था में खुद को काम पर या किसी भी समय-संवेदनशील वातावरण में उपयोग करने के लिए मजबूर करने से बहुत निराश होंगे।

मैंने पर्यावरण / संपादकों से परिचित होने से पहले ऐसा किया है, और यह बहुत अच्छी तरह से काम करता है।

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

संपादित करें: यह उल्लेख करना भूल गए कि माउस का उपयोग करने के किसी भी प्रलोभन से बचने के लिए आपको कंसोल से पूरी तरह से ऐसा करना चाहिए!


3

मुझे याद है कि जब मैंने पहली बार एमएसीएस सीखना शुरू किया था, यह तब था जब मैं विम के साथ पहले से ही बहुत सहज था, और मैं उसी या उसी तरह की नाव में था जो आप थे, जहां मैं जानता था कि दूसरे संपादक में बहुत कुछ कैसे किया जाए, इसलिए मैंने शुरू किया emacs का उपयोग करना, यह हमेशा दर्द से धीमा था।

हालांकि, मुझे लगता है कि आपको जो करना है वह बस थोड़ा सा दर्द को अवशोषित करना होगा, और हमेशा, हमेशा, हमेशा सुनिश्चित करें कि आप कुछ ऐसा करने के लिए दस्तावेज़ीकरण देखें जो आप जानते हैं हैं अपने पिछले संपादक में कर सकते हैं, जैसे एक पंक्ति के अंत में जा रहा है, या पाठ के एक क्षेत्र का चयन करने के रूप में।

यह मदद भी करता है यदि आपके पास हाथ पर एक स्थानीय वी-विशेषज्ञ है जो आप सवाल पूछ सकते हैं, या यदि आप हमारी कंपनी की तरह हैं, तो आप जोड़ी प्रोग्रामिंग को बढ़ावा देते हैं। इस तरह जब आप कुछ ऐसा करने की कोशिश कर रहे हैं जो आसान होना चाहिए, तो आप बस किसी से पूछ सकते हैं, वे आपको दिखाएंगे कि कैसे, और यदि आप कुछ हफ्तों के लिए नियमित रूप से संपादक का उपयोग कर रहे हैं, तो आपको अधिक पूछने की ज़रूरत नहीं है तब दूसरी प्रकृति बनने से पहले एक दो बार।

यदि आपके पास कोई स्थानीय संसाधन नहीं हैं, तो ऑनलाइन बहुत सारी किताबें / ट्यूटोरियल / संदर्भ पत्र हैं जो आपके अधिकांश प्रश्नों का उत्तर देने में सक्षम होना चाहिए।

अंत में, वीआई सीखना अन्य कौशल सीखने जैसा है, कोई चांदी की गोली नहीं है, और आपको यह स्वीकार करना होगा कि थोड़ी देर के लिए, आप इसमें कम उत्पादक होने जा रहे हैं फिर आपका वर्तमान संपादक। बस अपने आप से कहती रहो, "अन्य लोग वीआई को सीखने में सक्षम हो गए हैं, और मैं कम से कम उनके जितना स्मार्ट हूं" (ऐसा मैं वैसे भी बताता हूं :))


3

उपयोग करने के लिए मुझे के लिए मुख्य कारण viहै ssh(या पोटीन Windows पर): यदि आप दूर से एक यूनिक्स सर्वर में प्रवेश कर लिया है, तो viहमेशा उपलब्ध है। और यह VT100 के साथ काम करता है जब न तो कर्सर कुंजी और न ही बैकस्पेस / डिलीट मैप किए जाते हैं।

साथ ही VI संपादक पॉकेट रेफरेंस जैसी पुस्तक होने से बहुत मदद मिलती है।


3

जीवीआईएम में एक बहुत अच्छा ट्यूटोरियल है (स्टार्ट मेनू समूह में लिंक)।

मैंने पाया कि शुरुआती लर्निंग कूबड़ को खत्म करने में मदद मिली; और फिर मेरे विजुअल स्टूडियो को वीईईएमयू में स्विच करने से मुझे अपने VI कौशल को सुधारने में मदद मिली।

इसके अलावा, http://vimcasts.org/ पर महान


2

आप मूल हैकर हैकर कीबोर्ड (कोई तीर कुंजी नहीं) में से एक पर अपने हाथों को प्राप्त कर सकते हैं और अपने (वायरलेस) माउस को हर बार जब आप संपादन शुरू करते हैं, पहुंच से बाहर कर सकते हैं।


2

कमांड / शॉर्टकट की एक बड़ी सूची को लिखना आसान है, लेकिन अभ्यास के बिना उन सभी को याद रखना मुश्किल है।

एक समय में एक नई कमांड पर ध्यान दें। जब यह स्वचालित हो जाता है, तो इसे एक या दो सप्ताह के लिए उपयोग करने के बाद कहें, अपने प्रदर्शनों की सूची में एक और जोड़ें।

आप अल्पावधि में कुछ चीजों को पूरा करने के लिए लंबा रास्ता तय करेंगे - ये नए शॉर्टकट सीखने के लिए स्पष्ट अवसर हैं।

मेरे अनुभव में यह आसान था जब मैंने एक बार में बहुत अधिक नहीं लेने की कोशिश की।


2

मेरा नंबर एक सुझाव: कीबोर्ड को देखने की आवश्यकता के बिना, तेजी से टाइप करना सीखें।

यदि आप प्रकार नहीं छू सकते हैं और हमेशा बृहदान्त्र या hjkl या:% s / foo / bar के लिए शिकार-एंड-पेकिंग करते हैं, तो इसके बारे में भूल जाएं। माउस का उपयोग करने से टाइपिंग तेज हो सकती है, लेकिन अगर आपके लिए ऐसा नहीं है, तो vi काम पर नहीं जाएगा।

लेकिन अच्छे टाइपिंग कौशल, ssh और स्क्रीन और vi को मिलाएं तो स्वाभाविक होगा।


2

इस तथ्य का सामना करें कि यह एक तत्काल प्रदर्शन हिट बना देगा। एक नया उपकरण सीखने के दौरान आपको कुछ ऐसा करने में सक्षम होना चाहिए जो आप जानते हैं कि अन्य उपकरणों के साथ कैसे करें ताकि समस्या आपकी समस्या न हो। नए उपकरण का उपयोग करने के बाद थोड़ी देर में यह गायब हो जाएगा और आप केवल अंतर्निहित समस्या पर ध्यान केंद्रित करेंगे।

Vim जैसी किसी चीज़ के साथ (जैसा कि अन्य लोगों ने कहा है, vim vi से बहुत बेहतर है) यह दस्तावेज़ीकरण को फिर से पढ़ना और ब्राउज़ करना महत्वपूर्ण है। इसके बिना इंटरफ़ेस पूरी तरह से अनदेखा है। प्रत्येक नए पढ़ने के साथ आप एक विशेषता देखेंगे और कहेंगे, "आह हा, इस समस्या को हल कर दिया है जिसे मैं पिछले सप्ताह पता लगाने की कोशिश कर रहा था", और इसे आपके मस्तिष्क में दर्ज करेगा। वास्तविक दुनिया की समस्याओं से जुड़े समाधान जो आपके पास यादृच्छिक शॉर्टकट की तुलना में याद रखना बहुत आसान है।

अंत में आप इसे सुविधाओं के एक छोटे से सबसेट के साथ विम का उपयोग कर सकते हैं, इसलिए सभी घंटियाँ और सीटी के साथ अभिभूत न हों। वर्ड में सभी विशेषताओं के बारे में सोचें, क्या 99% लोग उनका उपयोग करते हैं?


2

ESC gg=Gकोड को रीइंडेंट करने के लिए और :retabटैब को स्पेस या स्पेस को टैब में बदलने के लिए जो मुझे घुमाने के लिए झुका था। इसलिए वास्तव में आपको इसका उपयोग करने के लिए मजबूर होने की आवश्यकता नहीं है, आपको बस सीखना होगा जब यह आपकी गति को बढ़ाने में आपकी सहायता कर सकता है।

के माध्यम से जाओ vimtutor

सरल संपादन के लिए vim का उपयोग करना शुरू करें, जैसे कॉन्फिग फाइल या html। जैसे ही आपको उनकी आवश्यकता हो, कमांड सीखें।

एक अच्छा .vimrc के लिए Google खोजें, जो आपके द्वारा समान टूलकिन का उपयोग करता है। सिंटैक्स हाइलाइटिंग चालू करें। एक अच्छी रंग योजना का पता लगाएं।

मैक्रोज़ जानें क्योंकि Vim स्वचालित कार्यों और स्निपेट प्रविष्टि के लिए सबसे अच्छा है, जैसे कुछ शब्दों को एक जटिल XML टैग में प्रारूपित करना या CSV को HTML तालिका में बदलना।


2

आप क्रीम के साथ शुरू करना चाह सकते हैं। क्रीम खुद को विम के "एक आधुनिक विन्यास" के रूप में वर्णित करता है। मूल रूप से, यह विम का एक विशेष संस्करण है जो सभी व्यावहारिक उद्देश्यों के लिए किसी भी अन्य पाठ संपादक की तरह दिखता है और महसूस करता है। लेकिन "विशेषज्ञ मोड" को सक्षम करें और आपके पास विम की शक्ति और व्यवहार है।

तो आप क्रीम को एक नियमित पाठ संपादक के रूप में उपयोग करना शुरू कर सकते हैं और फिर "विशेषज्ञ मोड" के साथ प्रयोग कर सकते हैं जब तक कि आप पूरी तरह से विम पर स्विच करने के लिए पर्याप्त आरामदायक न हों।


2

gVimआपके द्वारा उपयोग किए जाने वाले सभी प्लेटफार्मों पर इंस्टॉल करें।

फिर विमटॉर ( :help vimtutorया vimtutorकमांड लाइन पर) के माध्यम से चलाएं ।

निम्नलिखित व्याख्यान देखें और इसकी सलाह का पालन करें: 7 आदतें प्रभावी पाठ संपादन 2.0 के लिए

मैं कहता हूं कि आप निश्चित रूप से अपने सभी संपादन के लिए इसका उपयोग शुरू करना चाहते हैं। यदि आपको उत्पादकता में कमी का डर है, तो इसे ठोस अभ्यास करने के लिए एक सप्ताह का समय लें (मैंने एक बार qwerty से dvorak पर स्विच करने के लिए ऐसा किया था और सोमवार तक मेरी उत्पादकता काफी अधिक थी और बाद में इसके साथ छड़ी करने में कामयाब रहा)।

यह प्रयास के लायक है और आप पीछे मुड़कर नहीं देखेंगे!


1

व्यक्तिगत रूप से, मुझे जो करना था, वह यह सुनिश्चित कर रहा था कि मैं कई अनुप्रयोगों में विम कुंजी-बाइंडिंग (या कम से कम, करीब पर्याप्त) का उपयोग कर सकता हूं। पूरी तरह से स्विच करने के बाद जब मैंने संपादकों को बदला तो मैंने पाठ को कैसे संपादित किया, इससे मांसपेशियों की स्मृति के लिए विम संपादन शैली प्राप्त करना बहुत कठिन हो गया।

मेरे मामले में, विमु + विम्पटर ने चाल चली।


मैं कोमोडो एडिट का उपयोग करता हूं, जिसमें अंतर्निहित वी-बाइंडिंग हैं, इसलिए उन पर स्विच और वाइपरेटर की एक स्थापना ने काफी मदद की। अब अगर मैं केवल प्रतिद्वंद्विता को बदल सकता था ...
Xiong Chiamiov
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.