क्या कोई विम प्लगइन है जो उदात्त पाठ से गर्म निकास सुविधा को लागू करता है


11

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

मुझे आश्चर्य है कि वहाँ एक तरह से विम में ही कर रहा है?


: xa सभी से बाहर निकलें (सभी परिवर्तनों को सहेजें और विम को बंद करें)
Sim

यह फाइलें लिखता है, लेकिन कुछ और नहीं बचाता है। मुझे लगता है कि ओपी कुछ ऐसा चाहता है जो दोनों फाइलों को बिना लिखे उन्हें सहेजता है, और किसी भी खुले टैब या बफ़र्स की स्थिति को बचाता है
सदाबहार

हां, मैं समझ गया कि बाद में उनकी टिप्पणियों से।
सिम

जवाबों:


6

विम ऐसा कर सकता है, हालांकि यह थोड़ा क्लिंक हो सकता है और कुछ सेटअप ले सकता है।

romainl आप के साथ भाग जाता है session। लापता बिट्स स्वैप फाइलें हैं :preserve, और इसके लिए &झंडा है cpoptions

अगर विम या आपका सिस्टम क्रैश हो जाता है, तो स्वैप फाइलें रिकवरी के लिए होती हैं। वे आपको किसी भी सहेजे गए परिवर्तन (कुछ सीमाओं के साथ, देखें :he swap-file) को पुनर्प्राप्त करने में सक्षम करते हैं । हालांकि, जब विम सामान्य रूप से बाहर निकलता है, तो यह किसी भी स्वैप फाइल को हटा देता है, जिसका उपयोग कर रहा था, भले ही बफर में बिना बदलाव किए हुए हों।

यही कारण है कि जहां है :preserveऔर cpoptionsके &में आते हैं। :preserveबलों विम (के रूप में 4 सेकंड या 200 अक्षर, या जो कुछ भी अपने विकल्पों को इसे करने के लिए सेट करने के बाद मानक के विपरीत) तुरंत अपने स्वैप फ़ाइलों के लिए सभी बफ़र्स लिखने के लिए। आम तौर पर बाहर निकलने के साथ सहेजे गए स्वैप फ़ाइलों को हटाने के लिए नहीं करना :set cpoptions+=&विम को बताता है ।:preserve

दुर्भाग्य से, विम स्वचालित रूप से उनसे पुनर्प्राप्त करते समय स्वैप फ़ाइलों को साफ नहीं करता है, इसलिए आप जल्द ही इस तरह दिखने वाली एक निर्देशिका के साथ समाप्त हो सकते हैं:

.foo.txt.swn
.foo.txt.swo
.foo.txt.swp
foo.txt

आप पुराने को मैन्युअल रूप से हटा सकते हैं, लेकिन विम केवल स्वचालित रूप से पुनर्प्राप्त करने की पेशकश करेगा यदि कोई *.swpफ़ाइल है जहां वह अपनी नई स्वैप फ़ाइल डाल देगा। :recoverआदेश विम स्वैप फ़ाइलों से उबरने के लिए देखने के लिए बाध्य करेगा।

ऑटोकॉमैंड्स का उपयोग करके, आप संरक्षण (शायद QuitPreघटना के साथ ) और पुनर्प्राप्त कर सकते हैं (शायद BufReadया साथ BufReadPost)। Recover.vim एक प्लगइन है जो पुनर्प्राप्त करने के प्रबंधन के लिए एक मित्रता विकल्प के रूप में काम कर सकता है। यह स्वैप फ़ाइलों की सफाई का काम भी करता है। मुझे यकीन नहीं है कि यह एक निर्देशिका को कैसे संभालती है .swoलेकिन कोई .swpफ़ाइल नहीं है। आपको :recoverउस मामले के लिए अभी भी उपयोग करने की आवश्यकता हो सकती है ।

vim-obsession एक और प्लगइन है जो सत्रों को संभालने के लिए बहुत आसान बनाने का दावा करता है।


1

हाँ। इसे "सत्र" कहा जाता है और आप इसमें सभी के बारे में पढ़ सकते हैं:

:help session

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

हाँ, यह मुख्य अंतर होगा। कोई विचार नहीं अगर यह किसी भी तरह से tmux / screen / detach का सहारा लिए बिना प्राप्त किया जा सकता है।
रोमेनिल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.