मैं विम और विम्डिफ के बीच अंतर कैसे करूँ?


10

मेरे पास एक फ़ंक्शन है जो सभी बफ़र्स को टैब के रूप में खोल देगा। हालाँकि मैं इस फ़ंक्शन को जोड़ने के बाद, vimdiff भी अलग टैब के रूप में तुलना की जाने वाली फ़ाइलों को खोलता है और इसलिए यह अंतर नहीं दिखाता है। क्या कोई ऐसा तरीका है जहाँ मैं यह पता लगा सकता हूँ कि क्या इसकी vim या vimdiff जो कि मेरी vimrc फाइल को लागू कर रही है?

function! OpenTabs()
    let bf=len(filter(range(1, bufnr('$')), 'buflisted(v:val)'))
    if bf > 1
      exe "tab 5sball"
    endif
endfunction

संबंधित SO पोस्ट बफ़र्स के रूप में टैब का उपयोग करने के बारे में: बफ़र्स की तरह विम के टैब का उपयोग करना
पीटर रिन्कर

मुझे यह सवाल इसलिए मिला क्योंकि मैं नहीं चाहता था कि जब वीएम द्वारा कार्यक्षेत्र को लोड किया जाए तो VIm द्वारा निष्पादित किया जाए, git difftoolलेकिन इस मामले में यह let g:workspace_session_disable_on_args = 1मुझे बेहतर लगता है।
गुंटर जोचबॉयर

जवाबों:


12

:help diff इसमें शामिल हैं:

अपनी .vimrc फ़ाइल में आप कुछ विशेष कर सकते हैं जब विम को अलग मोड में शुरू किया गया था। आप इस तरह से एक निर्माण का उपयोग कर सकते हैं:

   if &diff
      setup for diff mode
   else
      setup for non-diff mode
   endif

12

आप &diffअपने vimrc जैसे विकल्प का उपयोग कर सकते हैं :

if &diff
    echo "in diff mode"
else
    echo "not in diff mode"
endif

देख :h 'diff'


भगवान! यदि आप मेरा उत्थान करेंगे तो मैं आपका उत्थान करूंगा;)
रिच

अहा I मैं "सबमिट" पर क्लिक करने के लिए 6 सेकंड बहुत धीमा था! मेरी वोट दें :) है
statox

त्वरित प्रतिक्रिया के लिए धन्यवाद! आश्चर्य है कि क्या दृश्य और vi को भी पहचानने का कोई विकल्प है?
अंकित जैन

@AnkitJain दृश्य के लिए आप देख सकते हैं कि क्या आपके सभी बफ़र्स के पास 'readonly'विकल्प सेट है, या हो सकता है viewकि आप वीआइएम वेरिएबल को सेट करने के लिए उपनाम दे सकते हैं जिसे आप स्टार्टअप पर जांचेंगे।
statox

3
@AnkitJain:h v:progname
क्रिश्चियन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.