फ़ाइल को अनज़िप करने का प्रयास न करने के लिए विम को कैसे बताएं


15

मैं .xlsxविम में एक फ़ाइल खोलने की कोशिश कर रहा हूं , लेकिन एक त्रुटि मिली:

***error*** (zip#Browse) unzip not available on your system  

मुझे पता है कि यह एक द्विआधारी फ़ाइल है, लेकिन मैं कुछ चेकसम करना चाहता हूं और शायद हेक्स में बदल सकता हूं।

मैंने देखा कि अगर मैं एक्सटेंशन बदल देता हूं, तो विम अब इसे अनज़िप करने की कोशिश नहीं करता है। जो मुझे मेरे प्रश्न की ओर ले जाता है:

क्या कोई तरीका है कि आप किसी फाइल को खोलने की कोशिश करें, बिना बताए उसे खोल दें?

FWIW, मैं विंडोज 7 के तहत विम 7.4 का उपयोग कर रहा हूं।


मुझे अपने लिनक्स सिस्टम पर समान त्रुटि मिलती है, इसलिए यह विंडोज-विशिष्ट व्यवहार प्रतीत नहीं होता है
मार्टिन टूरनोइज

1
जिज्ञासा से बाहर, आप अपने चेकसम / हेम को वीम के भीतर से क्यों कर रहे हैं?
रैंडम 832

इस अवसर पर @ random832, सिर्फ इसलिए कि यह पहली बात है जो मेरे दिमाग में आई थी। सबसे अधिक बार, क्योंकि मैं पूरी फाइल के बजाय एक सीमा की जांच कर सकता हूं , और हेक्स क्योंकि मैं कच्चे के साथ आगे और पीछे स्विच कर सकता हूं।
14

जवाबों:


16

इस तरह की कार्यक्षमता को ऑटोकैड द्वारा नियंत्रित किया जाता है । किसी विशिष्ट कमांड के लिए स्वतः पूर्णता को निष्क्रिय करने के लिए, आप :noautocmd(संक्षिप्त :noau) का उपयोग कर सकते हैं । इस मामले में

:noau e foo.xlsx

ज़िप फ़ाइल को खोलने का प्रयास करने वाले ऑटोकैम को ट्रिगर करने के बजाय बस कच्ची फ़ाइल को खोलेंगे।

आप इसे अपने शेल से भी उपयोग कर सकते हैं:

$ vim -c 'noau e foo.xlsx'

यदि आप सभी ऑटोकैड को अक्षम करने की तुलना में अधिक ग्रैन्युलैरिटी चाहते हैं, तो आप विकल्प का उपयोग करके अस्थायी रूप से BufRead/ BufReadPreऑटोकैम को अक्षम कर सकते हैं 'eventignore'

:set ei=BufRead,BufReadPre
:e foo.xlsx
:set ei=

क्या ज़िप प्लगइन द्वारा परिभाषित autocmd/ के augroupरूप में इसे अक्षम करना भी संभव है ? मुझे यह पसंद है (+1), लेकिन अगर आपके पास उदाहरण के autocmdलिए वाक्यविन्यास हाइलाइट को निष्क्रिय करने के लिए है और जैसे कि बड़ी फ़ाइलों के लिए (जैसा कि आम है), तो आप इसे साइड-इफेक्ट के रूप में भी अक्षम कर देंगे ...
मार्टिन टूरनोइज

@Carpetsmoker अस्थायी रूप से नहीं। यदि आप समूह का नाम जानते हैं (इस मामले में "ज़िप"), तो आप उस समूह में परिभाषित सभी ऑटोकैड्स को अपरिभाषित कर सकते हैं augroup zip | exe 'au!' | augroup END
जामसेन

10

यह "ज़िप" प्लगइन को लगता है, जिसे विम के साथ भेज दिया जाता है और डिफ़ॉल्ट रूप से सक्षम किया जाता है।

:help zip इसके बारे में कुछ जानकारी है, अन्य बातों के अलावा:

पूर्वव्यापी कारोबार

यदि किसी कारण से आप ज़िप की गई फ़ाइलों की जांच करने के लिए vim का उपयोग नहीं करना चाहते हैं, तो आप ज़िप प्लग को लोड होने से रोकने के लिए निम्नलिखित दो चर अपने <.vimrc> में डाल सकते हैं:

let g:loaded_zipPlugin= 1                                               
let g:loaded_zip      = 1                                               

इन 2 लाइनों को जोड़ने के बाद, मैं .zipकिसी भी अन्य फ़ाइल के रूप में एक फ़ाइल खोलने में सक्षम हूं ।

मुझे इस बारे में या तो पता नहीं था; लेकिन त्रुटि संदेश का उल्लेख है zip#Browse, इसलिए मैं सिर्फ टाइप किया :help zipऔर सही प्रलेखन पृष्ठ पर उतरा :-)

देखें कि मैं विम के प्रलेखन में विषयों पर कैसे नेविगेट करूं? विम की सहायता प्रणाली के बारे में कुछ और जानकारी और युक्तियों के लिए।

यह tarप्लगइन के लिए भी काम करेगा , सिवाय आपके उपयोग के g:loaded_tarPluginऔर g_loaded_tar


वह चालबाजी करता है। बहुत बुरा मैं प्रलेखन सवाल से जोड़ने के लिए +2 नहीं कर सकता।
रफ्लो

@ रोफ्लो मैं उस पोस्ट के लिए कोई क्रेडिट नहीं ले सकता, यह सब रोमेल का काम है :-)
मार्टिन टूरनोइज
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.