Відповіді:
Так, є! Ви можете досягти цього за допомогою :tabdoта :windo. Для вашого конкретного випадку:
:tabdo windo set number
Див. :help :tabdoТа :help :windoдля отримання додаткової інформації.
: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".
:tabdo windoможе викликати автокоманди, і уповільнить налаштування параметрів. Хоча рішення Tommy A не можна використовувати поза коробкою, саме його слід віддати перевагу в плагінах.
:tabdoнедостатньо.:help :tabdoговорить, що він працює в поточному вікні кожної сторінки вкладки. Для виконання команди у всіх вікнах на всіх вкладках вам знадобиться:tabdo windo set number.