दहशत नहीं!
फ़ाइलों को पुनर्प्राप्त करना हमेशा सुरक्षित होता है, क्योंकि विम कभी भी कोई बदलाव नहीं लिखते हैं जब तक आप उन्हें खुद नहीं लिखते हैं। तो एक स्वैप फ़ाइल से उबरने और फिर बचत के बिना बंद करने से कुछ भी नहीं बदलेगा।
अपने स्वैपफिल का आयोजन करें:
अपने सभी स्वैप फ़ाइलों को एक ही स्थान पर रखने के लिए vim प्राप्त करें, ताकि आप हमेशा यह जान सकें कि वे कहाँ हैं:
set directory^=$HOME/.vim/swap//
या जहाँ भी आप चाहें। का प्रयोग करें //
फ़ाइल नाम के अंत में तो तुम नाम टकराव नहीं मिलता स्वैप फ़ाइल नाम के लिए पूर्ण फ़ाइल पथ का उपयोग vim बनाता है। सुनिश्चित करें कि निर्देशिका मौजूद है, या विम इसका उपयोग नहीं करेगा (यह आपके लिए इसे नहीं बनाएगा)।
ध्यान दें: यह केवल पर्यावरण चर पर काम करता है, यदि आप एक विस्मार्क चर का उपयोग करना चाहते हैं तो हमें कुछ :execute
जादू का उपयोग करने की आवश्यकता है :
execute "set directory^=".my_vim_home_var."/swap//"
मतभेदों को दूर करें:
विम की मदद इस स्थिति में उपयोग करने के लिए एक बहुत ही उपयोगी कमांड का सुझाव देती है :DiffOrig
:। यह एक डिफ़ॉल्ट विम कमांड नहीं है , इसलिए :h :DiffOrig
अपने vimrc से कार्यान्वयन को कॉपी करें । (यह भी $VIMRUNTIME/defaults.vim
अगर तुम vim8 है) अब, आप फ़ाइल को पुनर्प्राप्त कर सकते हैं और अनमॉडिफाइड संस्करण से जो भी बदला है, उसे प्राप्त करने के लिए डिफाइरिग चला सकते हैं।
यदि आप कई स्वैप फ़ाइलों की सामग्री की तुलना करना चाहते हैं, तो अपनी फ़ाइल को प्रत्येक अलग स्वैप फ़ाइल से पुनर्प्राप्त करें और फिर अस्थायी फ़ाइलों के लिए परिणाम लिखें। अब फ़ाइलों को लोड करें और :diffthis
प्रत्येक फ़ाइल पर चलाएं , आप जो चाहें बदलाव करें, मूल फ़ाइल पर वापस लिखें और अस्थायी और स्वैप फ़ाइलों को हटा दें।
उपयोगी आदेश:
:swapname
: vim नाम का उपयोग करें वर्तमान बफर के लिए स्वैप फ़ाइल के लिए उपयोग कर रहा है ( :h :swapname
)
:recover
: चयनित फ़ाइल पुनर्प्राप्त करता है, जब आप vim और प्रेस शुरू करते हैं R( :h :recover
)
मदद देखें:
: विम एक पूरी वसूली पर उपयोगकर्ता के मैनुअल की धारा है :usr_11.txt
: स्वैप फाइलों पर विम के संदर्भ मदद :h swap-file
, h recovery
(स्वैप फ़ाइल स्थान की स्थापना के लिए) निर्देशिका विकल्प पर सहायता::h 'directory'
संपादित करें: निर्देशिका की सेटिंग के लिए संशोधित उदाहरण, जैसा कि @B परत द्वारा टिप्पणियों में बताया गया है