Vim में फाइल खोलने के बाद बैक डायरेक्टरी ब्राउजिंग पर जाएं


123

जब मैं एक निर्देशिका ब्राउज़िंग को विम में खोलता हूं, तो मैं कर्सर को एक फ़ाइल नाम पर ले जाकर दबाकर फ़ाइल खोल सकता हूं Enter

अब, क्या पिछली निर्देशिका ब्राउज़िंग पर वापस जाने की कोई आज्ञा है?

यदि नहीं, तो क्या निर्देशिका ब्राउज़िंग मोड को बंद किए बिना फ़ाइल खोलने का कोई तरीका है?


2
मुझे यकीन नहीं है, लेकिन अगर आप वास्तव में सुविधाजनक निर्देशिका ब्राउज़ करना चाहते हैं, तो मैं सुझाव देता हूं कि आप NERDTree
जोहान कोटलिंस्की

जवाबों:


198

आप अंतिम बफ़र का उपयोग करके वापस जा सकते हैं :b#

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

अद्यतन : चूंकि यह उत्तर सही उत्तर के रूप में स्वीकार किया जा रहा है और इस प्रकार शीर्ष पर है, इसलिए मैं @romainl द्वारा एक सहित कुछ उत्तरों को संक्षेप में बताना चाहूंगा कि imho सही है।


3
वह होना चाहिए :b#। मैं इसे ठीक कर दूँगा, लेकिन एकल-वर्ण संपादन नहीं उड़ेंगे।
इक्रिस्टोफ़र्सन

यदि मैं करता हूं vim <dirname>और फिर फ़ाइल पर नेविगेट करता हूं और दबाता हूं Enter, तो यह काम नहीं करता है; अगर मैं विम खोलता हूं, तो :e <dirname>, फ़ाइल का चयन करें और Enter, यह काम करता है। दोनों मामलों में :buffersकेवल एक बफर दिखाता है। मुझे यकीन नहीं है कि ऐसा क्यों है।
mcmlxxxvi

@mcmlxxxvi vim wiki के अनुसार b#केवल "पहले से संपादित बफ़र्स" के लिए काम करता है: vim.wikia.com/wiki/…
ezdazuzena

3
अन्य सभी सही उत्तरों को सारांशित करते हुए, अच्छी बात है कि काश और लोग ऐसा करते।
लाइटमैन

1
@veich आपकी टिप्पणी के लिए धन्यवाद, लेकिन मैं अब ऐसा नहीं करूंगा क्योंकि सवाल केवल पिछड़े जाने का है। यह कोई विकी पृष्ठ नहीं है, मैं स्पष्टता के लिए अन्य प्रश्नों का सारांश प्रस्तुत कर रहा हूं। आशा है कि आप समझ गए होंगे।
एज़दाज़ुज़ेना

88

आप उपयोग कर सकते हैं Ctrl- Oपिछले बफर पर वापस जाने के लिए।


2
सामान्य रूप से बहुत उपयोगी है (उदाहरण के लिए पीछे से नेविगेट करने के लिए gf), लेकिन निर्देशिकाओं की खोज के मामले में यह मुझे "लाइन" पर वापस नहीं लाता है जब मैं फ़ाइल खोल रहा था। :Rex<Enter>, जो कुछ अनाड़ी है (5 कीस्ट्रोक्स बनाम 1), यह करता है। संभवतः यह मानचित्रण के लिए एक उम्मीदवार है ...
टॉमस गैंडर

34

नेट्रव सूची में वापस आने की उचित आज्ञा है :Rex[plore]। आपके द्वारा दर्जनों फ़ाइलों से कूदने और चलाने के बाद भी आप इसे चला सकते हैं।


जब netrw लिस्टिंग को छोड़ने के बाद किसी फाइल को एडिट किया जाता है, तो क्या :Rexploreकिसी और के साथ लौटने से अलग होता है :Explore?
जशा

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

29

:Ex आपको वापस ले जाएगा (और आपको दिखाएगा कि आपने क्या संपादित किया है और बचत नहीं की है)।


1
मैंने हर उत्तर में से एक को उतारा। वे सभी उपयोगी थे
javadba

अच्छा है, यह थोड़ा बेहतर है Ctrl-Oक्योंकि यह ..शीर्ष पंक्ति (कुछ नेट्र हेडर) के बजाय मूल निर्देशिका ( ) को हाइलाइट करता है , लेकिन यह अभी भी नहीं है जहां मैंने एक्सप्लोरर (खोली गई फ़ाइल) को छोड़ दिया है। 4 कीस्ट्रोक्स बनाम 1, jजहां मैं था, वहां नेविगेट करने के लिए एस की कुछ बचत , लेकिन फिर भी :Rex<Enter>अगर मैं बहुत अधिक नेविगेशन की उम्मीद कर रहा हूं तो मुझे मैप करने की संभावना है ।
टॉमस गैंडर

26

मैं दो बफ़र्स को आगे और पीछे जाने के लिए Ctrl ^ पर निर्भर करता हूं।


1
इसने मेरे लिए होमबॉव से OSX पर vim 7.3 के साथ काम किया। Ctrl-O काम नहीं करता है।
गार्डनर बिकफोर्ड

5
आपको शिफ्ट की भी आवश्यकता नहीं है, बस Ctrl 6
mVChr

अधिक सही ढंग से, यह "वैकल्पिक फ़ाइल को संपादित करता है": vimdoc.sourceforge.net/htmldoc/editing.html#CTRL- ^
ezdazuzena

अति उत्कृष्ट! यद्यपि यह सिर्फ आगे और पीछे काम करता है ("1 स्तर पूर्ववत" की तरह), लेकिन यह वास्तव में उस रेखा पर लौटता है जिस पर मैं था! लगता है कि मैं :Rex<CR>सब के बाद मैप नहीं कर रहा हूँ ! (बेशक, केवल जब मैं नेस्टेड नेवीगेशन से "वापस जाने" के लिए तत्पर नहीं हूं (किसी अन्य फ़ाइल पर कूद गया))।
टॉमाज़ गैंडर

14

मैं आमतौर पर सिर्फ उपयोग करता हूं :E। यह याद रखना आसान है और आपको आपके द्वारा खोली गई फ़ाइल की निर्देशिका सूची में वापस लाता है।


2
मुझे आश्चर्य है कि इसमें बहुत कम वोट हैं। इसका जवाब जरूर है।
ताओपुर

1
हैरान मत हो - मेरे वर्तमान vim पर 7.4.x :Eअस्पष्ट है और कुछ भी नहीं करता है। आपको कम से कम टाइप करना होगा :E<CR>
टॉमस गैंडर

1
यह उसी तरह है जैसे :Exया :Explorerअन्य कमांड के साथ शुरू होने Eपर परिभाषित नहीं किया गया है। उदाहरण के लिए देखें stackoverflow.com/a/14367507/1141095
ezdazuzena
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.