Respuestas:
¡Sí hay! Puede lograr esto con :tabdoy :windo. Para su caso específicamente:
:tabdo windo set number
Ver :help :tabdoy :help :windopara más información.
:tabdo windo set numberhace el trabajo, pero realmente no me gusta ya que en realidad cambia a cada pestaña y ventana antes de ejecutar el comando. Cuando termine de ejecutarse, terminarás en la última ventana de la última pestaña.
Creo que esta es una forma más limpia de establecer opciones en todas las ventanas sin cambiar la pestaña y la ventana actuales:
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>)
La ejecución :SetAll number 1habilitará la columna de números en todas las ventanas, excepto las que se han buftypeconfigurado, como las ventanas de ayuda.
Esto es lo mismo que ejecutar: :tabdo windo let &number = 1. Entonces, el segundo argumento debe ser una expresión asignable. En lugar de :set filetype=ini, lo sería :SetAll filetype "ini".
:tabdo windopuede activar los comandos automáticos y ralentizar la configuración de las opciones. Si bien la solución de Tommy A no se puede usar de fábrica, es la que se prefiere en los complementos.
:tabdoNo es suficiente.:help :tabdodice que funciona en la ventana actual de cada página de pestaña. Para ejecutar un comando en todas las ventanas en todas las pestañas que necesitará:tabdo windo set number.