2012-06-05 3 views
5

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

क्या किसी को पता है कि कोई ट्यूटोरियल है जो सामान्य टेक्स्ट एडिटर को वीआई/एम क्षमता में बदलने के मूलभूत सिद्धांतों पर जाता है? प्रोग्रामिंग भाषा कोई फर्क नहीं पड़ता; मैं काफी अनुभवी प्रोग्रामर हूं।

मैं अब तक निम्न संसाधनों पाया है:

+4

लग रहा है। ;) – Almo

+0

@ आल्मो, =)। हाँ, मैंने मौजूदा सरल कार्यान्वयन को खोजने का प्रयास करने में काफी समय लगाया। उम्मीद है कि अन्य लोग मेरे से बेहतर ट्यूटोरियल के साथ आ सकते हैं। ;-) – sivabudh

उत्तर

1

एक अनुभवी Vi उपयोगकर्ता के रूप में तुम वहाँ मुख्य रूप से कर रहे हैं कि पता चल जाएगा दो महत्वपूर्ण पहलुओं जो इसे दूसरे के लिए अलग बनाती हैं (vis UAL) संपादकों: - इनपुट मोड Esc और : उन दोनों के बीच स्विच करने का आम तरीके - प्रासंगिक कुंजीपटल मानचित्रण, जहां कई कुंजी दबाव एक आदेश का निर्माण

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

बेशक कीबोर्ड मैपिंग काफी अच्छी तरह से प्रलेखित हैं, इसलिए इसे लागू करना बहुत मुश्किल नहीं होना चाहिए।

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

कमांड मोड का मूल वाक्यविन्यास एड/sed संपादकों से विरासत में मिला है ताकि आप उस पर कार्यान्वयन (या कागजात) देख सकें।

सब कुछ, यह एक सतही कार्यान्वयन पाने के लिए एक बड़ी नौकरी नहीं है जो बहुत कुछ दिखता है vi। लेकिन यह वास्तव में अच्छा कर रहा है एक और मामला है। मैं सुझाव दूंगा कि आप उत्कृष्ट विम (http://www.vim.org/) का उपयोग करके गंभीरता से विचार करें।

2

कुछ प्रेरणा के रूप में, आप विभिन्न आईडीई में वीआई इम्यूलेशन के कार्यान्वयन पर एक नज़र डाल सकते हैं।

5

मैं पहली बार लगता है कि आपको पता होना चाहिए कि छठी/विम वास्तव में कर रहे दो भागों। एक दृश्य संपादक है जिसे vi कहा जाता है और दूसरा एक-लाइनर संपादक है जिसे ed कहा जाता है।

असल viदृश्य संपादक कहा जाता है क्योंकि यह ed (संपादक) के शीर्ष पर बनाया गया है है।यह पूर्व मोड का दृश्य हिस्सा है, जहां आप अपना टेक्स्ट देख और संपादित कर सकते हैं, यही कारण है कि viदृश्य से इसका नाम मिलता है।

पूर्व मोड वास्तव में संपादक की प्रतिकृति/प्रतिनिधित्व ed है। टर्मिनल पर बस ed को फायर करें और अपने डिफ़ॉल्ट वीआई पूर्व आदेशों का उपयोग करें। विज़ुअल, और मोड vi द्वारा उपयोग किए जाते हैं।

:100 // Go to line 100, ex mode (ed) 
100G // Go to line 100, normal mode(vi) 

:.,5d // Delete 5 lines, ex mode (ed) 
5dd // Delete 5 lines, normal mode (vi) 

और इतने पर ...

कि अधिक जानकारी के लिए मैं हे से उत्कृष्ट पुस्तक Learning the vi and Vim editors पढ़ने के लिए सिफारिश की ': उदाहरण के लिए वहाँ कई आदेशों है कि वास्तव में ही बात कर रहे हैं, उदाहरण के लिए कर रहे हैं रेली: जैसे तुम मुझे के लिए अपने प्रश्न में अपने खुद के सवाल का जवाब दे

alt text

+0

वाह, 'vi' और' ed' के बारे में दिलचस्प तथ्य। सिफारिश के लिए धन्यवाद। मेरा मानना ​​है कि मेरे पास किताब है। मुझे अपने बुकशेल्फ़ की जांच करनी होगी। =) इसे वी के बारे में खुद को शिक्षित करने के लिए तैयार हो जाएगा। – sivabudh

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