Yanıtlar:
Evet var! Bunu :tabdo
ve ile yapabilirsiniz :windo
. Sizin durumunuz için özellikle:
:tabdo windo set number
Daha fazla bilgi için :help :tabdo
ve bölümüne bakın :help :windo
.
:tabdo windo set number
işi bitirir, ancak komutu çalıştırmadan önce her sekmeye ve pencereye geçtiği için gerçekten sevmiyorum. Çalışmayı bitirdikten sonra, son sekmenin son penceresine çıkacaksınız.
Bu geçerli sekmeyi ve pencereyi değiştirmeden tüm pencerelerde seçenekleri ayarlamak için daha temiz bir yol olduğunu düşünüyorum:
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>)
Çalıştırıldığında :SetAll number 1
, sayı pencereleri, buftype
yardım pencereleri gibi ayarlanmış olanlar dışında tüm pencerelerde etkinleştirilir .
Bu çalışan aynıdır: :tabdo windo let &number = 1
. Dolayısıyla, ikinci argümanın atanabilir bir ifade olması gerekir. Bunun yerine :set filetype=ini
, olurdu :SetAll filetype "ini"
.
:tabdo windo
, otomatik komutları tetikleyebilecek ve seçenek ayarlarını yavaşlatabilecek (geçerli sekmeyi / pencereyi değiştirmenin yanında) ekleyeceğim . Tommy A'nın çözümü kullanıma hazır olmasa da, eklentilerde tercih edilen çözümdür.
:tabdo
yeterli değil.:help :tabdo
her sekme sayfasının geçerli penceresinde çalıştığını söylüyor. Tüm sekmelerdeki tüm pencerelerde komut çalıştırmak için ihtiyacınız olacaktır:tabdo windo set number
.