मैं vimdiff में संदेश को "संपादित करने के लिए 2 फाइलें" कैसे दबाऊं?


11

'vimdiff ab' हमेशा "2 फ़ाइलों को संपादित करने के लिए" प्रिंट करता है। मैं वह देखना नहीं चाहता। मैं इससे कैसे बच सकता हूं?

यहाँ एक उदाहरण है:

⚡ vimdiff  a b                                                                                                                               
2 files to edit

मैं बैश स्क्रिप्ट से vimdiff का उपयोग करना चाहता हूं और यह आउटपुट नहीं देखना चाहता


1
आप निश्चित रूप से इसके साथ लॉन्च कर सकते हैं 2>/dev/null। आपको इसकी आवश्यकता क्यों है? यह ऐसी मामूली झुंझलाहट की तरह लगता है। ओह, एक पूरी तरह से अप्रासंगिक नोट पर, क्या आप अपना $ PS1 साझा कर सकते हैं? एक संकेत के रूप में आप किस चरित्र का उपयोग कर रहे हैं?
टेराडॉन

1
vimdiff ab 2> / dev / null मेरे लिए काम नहीं करता है।
एरिक जॉनसन

मैं बस वहाँ में यूनिकोड चरित्र चिपका रहा हूँ। मेरा $ PS1 यहाँ परिभाषित किया गया है: github.com/kablamo/dotfiles/blob/master/links/.bash/prompt.sh
एरिक जॉनसन

अच्छा धन्यवाद :)। और आप सही हैं, STDERR को पुनर्निर्देशित करने से काम नहीं लगता है। मैंने सोचा कि यह किया है, लेकिन मैं अभी लाइन नहीं देखा था।
टेराडन

उत्तर यहाँ लगता है । टिप्पणियों को पढ़ना सुनिश्चित करें।
टेराडन

जवाबों:


3

विम स्रोत के माध्यम से देखने पर, ऐसा लगता है कि निष्पादन योग्य को लॉन्च करते समय exऔर उसके -sविकल्प का उपयोग करते समय, या कंसोल नहीं होने पर उस संदेश को दबाया जा सकता है।

न तो दृष्टिकोण अलग करने के लिए काम करेगा।

हालाँकि, संदेश केवल आउटपुट है यदि कमांड लाइन पर निर्दिष्ट एक से अधिक फ़ाइल है।

तो चलिए इसे ट्रिक करते हैं:

vim a -c "vert diffsplit b"

जो मूल रूप से कहते हैं, "संपादित फ़ाइल एक vim साथ, और एक बार एक भरी हुई है, फ़ाइल के साथ एक ऊर्ध्वाधर विभाजन खोलने और उन्हें diff"।


अरे वह काम करता है! बहुत अच्छे धन्यवाद! अब मुझे याद है कि यह कहां था कि मैं यह चाहता था। अच्छी खबर यह है कि मुझे लगता है कि यह मेरे लिए अभी भी उपयोगी जानकारी है।
एरिक जॉनसन

यदि आपकी दूसरी फ़ाइल में पथ या फ़ाइल नाम में जगह है, तो यह समाधान काम नहीं करता है। मैंने इसके बजाय -d ध्वज के साथ vim को कॉल करने और / dev / null को आउटपुट भेजने के बजाय इसके चारों ओर काम किया, इस तरह (उद्धरण सही रूप से रिक्त स्थान के साथ तर्क पास करेगा।): vd -d "$ a" "$ b"> / देव / अशक्त
DevDaddyNick

@DevDaddyNick क्या आपके लिए पूरी तरह से छिपाना नहीं है? यह मेरे लिए, zshमेरे शेल के रूप में, oh-my-zshआधारित कॉन्फ़िगरेशन के साथ उपयोग करता है।
कोडेलाहोमा

हाँ, मुझे बाद में पता चला कि मेरा समाधान तभी काम करता है जब आप टर्मिनल में विम का उपयोग नहीं कर रहे हों। मैं मैकविम का उपयोग कर रहा था, लेकिन अगली बार जब मैंने इस समाधान की कोशिश की, जब एसएसएचआईडी दूसरी मशीन में हो गई, इसने विम को पूरी तरह से दबा दिया।
DevDaddyNick

किसी और के लिए कोड में चारों ओर खुदाई करना चाहते हैं, आज की तारीख के रूप में कोड में प्रासंगिक लाइन यहाँ मुख्य
xdhmoore

-1

अपने .vimrc में सेट करें

set shortmess=at

अधिक सुझावों और triks


3
यह मेरे लिए काम नहीं करता है। मुझे संदेह है कि यह केवल कमांडलाइन पर नहीं विम के अंदर संदेशों को प्रभावित करता है।
एरिक जॉनसन

-1

SO पर इस पोस्ट के अनुसार , इसे अपने vimrc में सेट करने के लिए ट्रिक करना चाहिए:

set shortmess=filnxtToO

3
क्षमा करें, यह मेरे लिए तब भी काम नहीं करता है जब मैं उपयोग करता हूं --noplugin। मुझे अभी भी एक संदेश मिलता है। मैं संपादक में संदेश के बारे में बात नहीं कर रहा हूँ। आपके द्वारा संपादक को बंद करने के बाद, एक संदेश है और मुझे उससे छुटकारा पाना है। धन्यवाद हालांकि
एरिक जॉनसन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.