आपके उपयोग के मामले के आधार पर एक और दृष्टिकोण vimgrep और इसके परिणामों का उपयोग उपसर्ग में किया जाएगा । आप निम्न कार्य कर सकते हैं:
:vimgrep pattern %
वर्तमान फ़ाइल को खोजेगा और आपको पहले खोज परिणाम पर ले जाएगा। इससे भी महत्वपूर्ण बात यह है कि यह परिणाम "क्विकफिक्स लिस्ट" में रखता है।
:copen
इसके बाद क्विकफिक्स लिस्ट को एक अलग क्विकफिक्स-विंडो में खोलेगा। तो आपके पास अपने पिछले vimgrep से सभी लाइनों के साथ एक अलग विंडो होगी। क्विकफिक्स-विंडो के अंदर आप अपनी मूल फ़ाइल में संबंधित लाइन पर कूदने के लिए एक लाइन पर एंटर या डबल-क्लिक कर सकते हैं।
:colder
आपको पुरानी त्वरित उप-सूचियों (पुराने vimgrep परिणाम) पर वापस जाने देगा। और :cnewer
नए खोज परिणामों के लिए आगे बढ़ता है।
ध्यान दें कि रनिंग के दौरान क्विकफ़िक्स सूची को भी अपडेट किया :make
जाता है (यही कारण है कि इसकी फिक्सिंग के लिए क्विकफ़िक्स कहा जाता है)। इस वजह से "स्थान सूची" नामक क्विकफ़िक्स सूची में भी परिवर्तन होता है। इसका इस्तेमाल करने के बजाय आप का उपयोग :lvimgrep
, तो सी उपसर्ग के आदेशों से एल-उपसर्ग के आदेशों का उपयोग नहीं बल्कि - :lopen
, :lolder
, :lnewer
।
बेशक, बहुत कुछ आप कर सकते हैं। :help quickfix
अधिक जानकारी के लिए देखें ।
पुनश्च, आपने कहा था कि आप ऐसा दृष्टिकोण नहीं चाहते हैं जो लाइनों को हटा दे और फिर उन्हें पूर्ववत कर दे। लेकिन जब से आपने g/ERROR
उत्तर के रूप में चिह्नित किया था मुझे लगा कि मैं एक त्वरित और गंदा तरीका बताऊंगा g!/ERROR/d
। फिर आप आसानी से इसे पूर्ववत कर सकते हैं u
। इसके अलावा FYI करें, आप कमांड से :set hlsearch
मिलान किए गए पैटर्न को हाइलाइट करने के लिए कर सकते हैं :g
।