.scm
फ़ाइलों को संपादित करते समय यह बहुत अच्छा होगा अगर Vim स्वचालित रूप से (
शुरू करने के बाद स्वचालित रूप से अंतिम ब्रेस )
डाल देगा। मैं यह कैसे करु?स्वचालित रूप से ब्रेसिज़ को समाप्त करने के लिए मैं विम कैसे प्राप्त करूं?
उत्तर
आप अपनी पसंद के उद्घाटन ब्रेस मैप कर सकते हैं: AutoClose प्लगइन का उपयोग करने के लिए
:imap (()<left>
प्रयास करें।
अन्य, कम आक्रामक (और कम परेशान, आईएमओ), [ऑटोक्लोज़] (http: //www.vim) के साथ भ्रमित नहीं होना चाहिए। संगठन/स्क्रिप्ट/script.php? script_id = 200 9) थियागो अल्व्स द्वारा। –
@AndrewMarshall +1, आपका सूचीबद्ध संस्करण बहुत कम परेशान है। मैं यहां माइकोला के जवाब में एक के लिए एक विकल्प की तलाश में आया क्योंकि यह क्विर्क है। –
एफवाईआई, यह प्लगइन ठीक काम करने लगता है लेकिन मेरे लिए यह "laggy" '
इस विषय पर कई युक्तियां और प्लगइन्स हैं। Vimtips साइट पर relevant entry पर एक नज़र डालें।
मैं एक बहुत जरूरत है, और मैं पहले से ही प्लग-इन के कुछ करने की कोशिश की:
स्वतः, http://www.vim.org/scripts/script.php?script_id=1849, थोड़ा आक्रामक है।
सरल जोड़े, http://www.vim.org/scripts/script.php?script_id=2339, पायथन पर निर्भर करता है। यदि आप लिनक्स पर हैं तो यह कोई समस्या नहीं है, लेकिन विंडोज़ पर आपके पास पाइथन दुभाषिया को विम संस्करण से मिलान करने में परेशानी हो सकती है।
मेरी सलाह ClosePairs होगी, जो आप http://www.vim.org/scripts/script.php?script_id=2373 पर पा सकते हैं जो मेरे लिए पूरी तरह से काम कर रहा है। यह सरल और उपयोगी है।
इसका उपयोग करने में समस्या है (आईमैप या स्क्रिप्ट्स में से एक के माध्यम से)। आप .
कमांड का उपयोग कर पूर्ण संपादन को दोहराने में सक्षम नहीं होंगे।
e.g. (foo) with . only gets you foo, without the brackets.
अगर आप कोष्ठक सामान्य रूप से डालें, दो पात्रों के रूप में यह ठीक काम करता है।
आप इस नए प्लगइन बाहर निम्नलिखित प्लग-इन डाउनलोड AutoClose : Inserts matching bracket, paren, brace or quote
चेक कोशिश कर सकते हैं: vim-autoclose by Townk। पहले उल्लिखित AutoClose आक्रामक था, कभी-कभी एक अवांछित तरीके से व्यवहार करना।
सबसे आसान जवाब एक नक्शा शामिल करना है। उदाहरण के लिए .:
:inoremap (()<left>
समस्या
है कि आप प्रत्येक प्रतीक आप अपने आप बंद करना चाहते हैं ('{', '[', '' ', आदि)। इसके अलावा, प्लग इन सामान्य रूप में अधिक हैं के लिए एक प्रविष्टि जोड़ने के लिए की आवश्यकता होगी है "समापन" चरित्र का पता लगाने और नहीं यह दोहरा तरह स्मार्ट, उपलब्ध कराने बातें।
ऊपर समाधान और सबसे प्लग इन के साथ समस्या, कि वे टूट पूर्ववत अनुक्रम (gundo किसी को?) करते हैं, के रूप में :help ins-special-special में विस्तार से बताया है ।
हैं प्लगइन के सूची है कि क्या आप (vimtips से) पूछना है:
- delimitMate इसराइल Chauca Fuentes द्वारा (विन्यास, और तोड़ नहीं है पूर्ववत करें/फिर/दोहराने, लेकिन - iabbr तोड़ने) भी GitHub
- AutoClose कार्ल Guertin द्वारा पर (स्वत: बंद कर देता है विशिष्ट हार्ड-कोडेड वर्ण, लेकिन पूर्ववत करें/फिर/दोहराने नष्ट नहीं होती है) थियागो अल्वेस द्वारा
- AutoClose (विन्यास, लेकिन टूट जाता है पूर्ववत/फिर से/दोहराने)
- auto-pairs मियाओ जियांग द्वारा ऑटो जोड़े (विन्यास, लेकिन टूट जाता है पूर्ववत/फिर से/दोहराने)
- ClosePairs एडोआर्डो Vacchi द्वारा (विन्यास, लेकिन टूट जाता है पूर्ववत/फिर से/दोहराने)
- smartinput काना Natsuno (विन्यास द्वारा, लेकिन टूट जाता है पूर्ववत/फिर से/दोहराना)
vimtips के अलावा, वेब पर another nice explanation of the issue है।
किसी और के लिए जो इसे भविष्य में पाता है, मैंने अभी ऑटो-जोड़ों का उपयोग करना शुरू कर दिया है, और जब तक कि मैं शब्दावली को गलत नहीं समझता, यह मेरे पूर्ववत या इतिहास को तोड़ नहीं देता है। इस सूची में से सबसे अच्छा! यह बैकस्पेस पर जोड़े को हटाने को भी संभालता है! – Lethjakman
कौन सा विम संस्करण? पिछली बार मैंने वहां जांच की थी कि अभी भी विम 7.4 और उसके बाद ऑटो-क्लोजिंग के साथ सही ढंग से काम को पूर्ववत/दोबारा दोहराने/दोहराने का समाधान नहीं था। कुछ प्लगइन्स में सेटलाइन() का उपयोग करके एक हैक था जो पहले विम संस्करणों में काम करता था। – Ben
https://github.com/vim-scripts/Auto-Pairs
इस प्लगइन परीक्षण Undu फिर से करना के लिए। 2013 यह सिर्फ काम करता है। पायथन-मोड प्लगइन के साथ भी।
मैं वर्तमान में auto-pairs का उपयोग कर रहा हूं और यह काफी अच्छी तरह से काम करता है।
प्लगइन ब्रेकिंग पूर्ववत/फिर से/दोहराने के मुद्दे ऊपर सूचीबद्ध कुछ प्लगइन के बीच बने रहने लगते हैं, लेकिन मुझे लगता है कि यह एक मुद्दा नहीं है (ठीक है, कम से कम इस समय मेरे लिए नहीं)।
हालांकि एक चेतावनी हालांकि, मैं इसका उपयोग करने में सक्षम नहीं था: हेल्पटैग इस प्लगइन के साथ इस फ़ाइल के साथ मदद फ़ाइल उत्पन्न करने के समय उत्पन्न करने के लिए।
cohama करके एक नया प्लगइन है:
lexima.vim
(github)
(vim.org पर अभी तक नहीं)
इस प्लग .
आदेश का समर्थन करता है!
अफैइक, यह एकमात्र प्लगइन है जिसका समर्थन करता है।
इसके अलावा पूर्ववत/पुनः अनुक्रम काम करता है।
- 1. मैं स्वचालित ब्रेसिज़ को स्वचालित रूप से बंद करने के लिए emacs कैसे प्राप्त कर सकता हूं
- 2. स्वचालित रूप से रीफ्रेश करने के लिए मैं एक वेब ब्राउज़र कैसे प्राप्त करूं?
- 3. मैं UIGestureRecognizer को प्रोग्रामेटिक रूप से समाप्त/रीसेट कैसे करूं?
- 4. मिलान करने वाले कोष्ठक को हाइलाइट करने के लिए मैं विम कैसे प्राप्त करूं?
- 5. स्वचालित रूप से समाप्त होने के लिए WPF ListBox स्क्रॉल
- 6. ग्रहण को स्वचालित रूप से IF कथन में ब्रेसिज़ जोड़ने के लिए कैसे करें?
- 7. सम्मिलित टिप्पणियों का स्वचालित रूप विम में
- 8. मैं ईएससी कुंजी को तेजी से पहचानने के लिए विम कैसे प्राप्त करूं?
- 9. पायथन टिप्पणी लाइनों को ठीक से इंडेंट फ़ोल्ड करने के लिए मैं विम कैसे ठीक करूं?
- 10. Emacs को स्वचालित रूप से TAGS फ़ाइल को फिर से लोड करने के लिए कैसे करें?
- 11. मैं स्वचालित रूप से लापता पायथन मॉड्यूल कैसे स्थापित करूं?
- 12. मैं विम में स्वचालित फ़ोल्डर्स कैसे सक्षम करूं?
- 13. क्या मैं स्वचालित रूप से नल को पार्स करने के लिए AFNetworking प्राप्त कर सकता हूं?
- 14. मैं AJAX कॉल को लौटने से पहले समाप्त करने के लिए jQuery प्रतीक्षा कैसे करूं?
- 15. मैं विम के साथ फ़ाइल में सभी कार्यों को स्वचालित रूप से कैसे जोड़ सकता हूं?
- 16. मैं स्वचालित रूप से सबवर्सन वर्किंग कॉपी कैसे अपडेट करूं?
- 17. संपत्तियों को स्पष्ट रूप से कार्यान्वित करने के गुणों को प्राप्त करने के लिए मैं प्रतिबिंब का उपयोग कैसे करूं?
- 18. मैं एक टैग को स्वचालित रूप से बंद न करने के लिए jQuery एपेंड को कैसे मजबूर करूं?
- 19. स्वचालित रूप से समाप्त होने वाले तत्वों के साथ मानचित्र
- 20. UIActionSheet खारिज करने के लिए कैसे स्वचालित रूप से
- 21. मैं जावा से एक प्रक्रिया पेड़ को कैसे समाप्त करूं?
- 22. कैसे स्वचालित रूप से उत्पन्न करने के लिए C++ हेडर
- 23. वर्ड ब्रेक के रूप में स्ट्रिंग में अंडरस्कोर का इलाज करने के लिए मैं विम कैसे प्राप्त करूं?
- 24. स्वचालित रूप से विम और एक्सएमएल के साथ वर्तनी जांच
- 25. मैं सीपीएएन कॉन्फ़िगरेशन को स्वचालित कैसे करूं?
- 26. विम सहेजने के बाद स्वचालित रूप से बनाते हैं?
- 27. टेक्स्टमैट में कोड को स्वचालित रूप से टिप्पणी करने के लिए मैं शॉर्टकट का उपयोग कैसे करूं?
- 28. मैं एक emacs nrepl सत्र में स्वचालित रूप से paredit कैसे प्राप्त करूं?
- 29. मैं लोड करने के लिए hibernate import.sql कैसे प्राप्त करूं?
- 30. मैं कक्षा के सामान्य प्रकार को प्राप्त करने के लिए एक आंतरिक वर्ग कैसे प्राप्त करूं?
अन्य उत्तरों में उल्लिखित प्लगइन्स को संबंधित समापन "टाइपिंग" टाइप करते समय "समझदारी से" व्यवहार करने का लाभ होता है। यदि इसकी आवश्यकता नहीं है, तो मैं स्ट्रैगेट फॉरवर्ड मैप के साथ भी जाऊंगा। – user55400
कुछ प्लगइन्स भी: - टिप्पणी और स्ट्रिंग संदर्भों के भीतर विस्तार न करें, - ब्रैकेट की एक जोड़ी के साथ चयन को घेरने के लिए एक तरीका परिभाषित करें, - समापन ब्रैकेट से पहले कूदने के लिए प्लेसहोल्डर/मार्कर डालें (जो सबसे अधिक के साथ संगत है स्निपेट/टेम्पलेट्स विस्तारक प्लगइन्स)। –
क्या लाइन के अंत में ऐसा करने का कोई तरीका है? कभी-कभी यह उपयोगी से अधिक परेशान होता है लेकिन इसके साथ, मैं इसे खुशी से उपयोग करता हूं ... – alexpinho98