सभी खुले टैब और खिड़कियों में सेटिंग कैसे लागू करें?


17

क्या सभी टैब और विंडो में सेटिंग लागू करने का विकल्प है, जैसे :set numberसभी खुले टैब पर लागू होता है?

जवाबों:


17

हाँ वहाँ है! आप इस के साथ :tabdoऔर पूरा कर सकते हैं :windo। आपके मामले के लिए विशेष रूप से:

:tabdo windo set number

देखें :help :tabdoऔर :help :windoअधिक जानकारी के लिए।


4
:tabdoकाफी नहीं है। :help :tabdoयह कहता है कि यह प्रत्येक टैब पृष्ठ की वर्तमान विंडो में संचालित होता है। सभी टैब में सभी विंडो में एक कमांड निष्पादित करने के लिए आपको आवश्यकता होगी :tabdo windo set number
गैरीजोन

निष्पक्ष बिंदु! मैं अपडेट करूंगा।
Tumbler41

7

:tabdo windo set numberकाम हो जाता है, लेकिन मैं वास्तव में इसे पसंद नहीं करता क्योंकि यह वास्तव में कमांड चलाने से पहले प्रत्येक टैब और विंडो पर स्विच करता है। इसके चलने के बाद, आप अंतिम टैब की अंतिम विंडो पर समाप्त हो जाएंगे।

मुझे लगता है कि वर्तमान टैब और विंडो को बदले बिना सभी विंडो में विकल्प सेट करने का यह एक साफ तरीका है:

function! s:set_all(option, val, ...) abort
  let val = eval(a:val)

  for t in range(1, tabpagenr('$'))
    for w in range(1, tabpagewinnr(t, '$'))
      if gettabwinvar(t, w, '&buftype') !=# ''
        continue
      endif
      call settabwinvar(t, w, '&'.a:option, val)
    endfor
  endfor
endfunction

command! -complete=option -nargs=+ SetAll call s:set_all(<f-args>)

रनिंग :SetAll number 1सभी स्तंभों में संख्या स्तंभ को सक्षम करेगा, जो buftypeसेट किए गए लोगों को छोड़कर , जैसे कि सहायता विंडो।

यह चल रहा है के रूप में ही है: :tabdo windo let &number = 1। तो, दूसरे तर्क को एक असाइन करने योग्य अभिव्यक्ति की आवश्यकता है। इसके बजाय :set filetype=ini, यह होगा :SetAll filetype "ini"


1
मैं भी :tabdo windoजोड़ूंगा (वर्तमान टैब / विंडो को बदलने के साथ) जो ऑटोकॉमैंड को ट्रिगर कर सकता है, और विकल्प सेटिंग्स को धीमा कर सकता है। जबकि टॉमी ए के समाधान का उपयोग आउट-ऑफ-द-बॉक्स नहीं किया जा सकता है, यह प्लगइन्स में पसंद करने वाला है।
ल्यूक हरमिट्टे
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.