Чи є спосіб взяти наявне вікно (розділити) і помістити його на нову вкладку?
Чи є спосіб взяти наявне вікно (розділити) і помістити його на нову вкладку?
Відповіді:
Як і раніше запропонований :tabedit
підхід, більш швидкий спосіб зробити це (у звичайному режимі) натиснути Ctrl- W Shift- T. Ctrl-W - загальний префікс для найрізноманітніших команд віконних маніпуляцій.
Побачити:
:help Ctrl-W_T
:help Ctrl-W
help Ctrl-W_T
вас переносить довідковий запис Ctrl-W_t
(нижній регістр), проте далі на сторінці знаходиться Ctrl-W_T
запис (з
:echo bufnr("")
допомогою цього номера, ви можете розділити вікно з :sp #3
або :sb 3
(якщо число було 3). Можливо, ви зможете розробити деякі відображення чи функції, щоб спростити це.
:sb
буде працювати, але з останніми версіями Vim (> = 7.3) ви також можете використовувати стійкі скасування, встановивши, set undodir=/path/to/dir
де / path / to / dir - каталог, у якому ви створений з метою і потім set undofile
. Це дозволить вам вийти з vim, а потім перезапустити і зберегти стан скасування / повторення.
Спробуйте
:tabedit %<CR>
C-w T
Швидший спосіб зробити те ж саме
Це переміщує найновіший буфер на новій вкладці та відновлює попередній буфер у поточній вкладці. Я використовую це після перетягування нового файлу в мій Gvim
:sbp |wincmd p| wincmd T
Ви можете зіставити це так у Ctrl-Backspace
:nnoremap <C-BS> :sbp<bar>wincmd p<bar>wincmd T<CR>
вона особливо добре справляється з
:set switchbuf=usetab
Я використовував це, що дає вам дві функції, які можна прив'язати до пари гарячих клавіш або команд, і які працюють досить інтуїтивно. Я майже впевнений, що вона пропонує поведінку навіть більш доброзичливою, ніж наприклад Ctrl-W_T
.
Наприклад, коли на декількох вкладках відкрито кілька вікон, використання цієї функції дозволяє спеціально перемістити поточне вікно на наступну або попередню вкладку, а якщо ви перемістите щось до першої вкладки або після останньої вкладки, то вона повернеться на зовсім нову вкладку.
Це означає, що якщо у вас є 2 вкладки, кожна з яких має одне вікно, то переміщення вікна першої вкладки праворуч поєднає її з другою вкладкою, щоб отримати одну єдину вкладку з двома вікнами. Я не знаю, наскільки спростована ця операція для досягнення традиційних команд.
Це означає, що одна пара команд переміщення дозволяє змінювати вікна навколо вкладок, розділяти вікна на вкладки (натискаючи вікно до кінця) та приєднуючи окремі вкладки до вікон всередині однієї вкладки, майже все можливо, ви хочете, не маючи позиційного розташування (що є окремою темою і для якої добре вбудовані Ctrl-W
+ Shift-HJKL
команди працюють).