Как добавить горизонтальное разделение в окно tmux, которое охватывает всю ширину родительского окна?


29

Когда у меня окно tmux вертикально разделено на две панели, как я могу создать новую третью горизонтальную панель, которая простирается на всю ширину?

Например, как я могу получить из этого:

Ctr-b %

+–––––––––+–––––––––+
|         |         |
|         |         |
|         |         |  
|         |         |
|         |         |
+–––––––––+–––––––––+

к этому?

Ctr-b %
Ctr-b ...что теперь?

+–––––––––+–––––––––+
|         |         |
|         |         |
|         |         |  
|         |         |
|         |         |
+–––––––––+–––––––––+
|                   |
|                   |
+–––––––––––––––––––+

вместо этого?

Ctr-b %
Ctr-b "

+––––––––+––––––––––+
|        |          |
|        |          |  
|        |          |
|        |          |
|        |          |
|        +––––––––––+
|        |          |  
|        |          |
+––––––––+––––––––––+

Примечание: я не хочу перебирать все возможные комбинации макетов, Ctr-b Spaceчтобы в конечном итоге добраться до нужного макета - это должно быть достигнуто с максимально возможной краткостью.


Удивительно, что это не решенная проблема. Все приведенные ниже ответы совершенно бесполезны и не
— отвечают на

Ответы:


17

Вы можете использовать один из пяти предустановленных режимов макета (мозаичный) для достижения этой цели. Начиная с начальной точки (одиночного вертикального разделения), откройте новую панель, которая по умолчанию разделит активную панель, а затем поместит панели в плиточный режим:

Ctrlb,Alt5

От man tmux:

M-1 до M-5 Расположите панели в одной из пяти предустановленных компоновок: четная горизонтальная, четная вертикальная, основная горизонтальная, основная вертикальная или мозаичная.

Вы можете по желанию добавить select-layout tiledк связке клавиш в вашем, .tmux.confесли это был макет, который вы хотели регулярно.


Я плакал, когда узнал, что tmuxимеет предустановки после многих лет его использования.
— ДенисКолодин

Какие клавиши вы нажимаете на Mac? Ctrl b, Option 5не работает для меня.
— Лев Галлегуйос

18

Получите более новую версию tmux (как минимум 2.3).

Со страницы руководства:

-fОпция создает новую панель , охватывающую всю высоту окна (с -h) или всю ширину окна (с -v), вместо расщепления активной панели.


хороший ответ, но один или два примера были бы наиболее показательными
— dbkeys

5

tmux 2.3 поддерживает -fкоммутатор, split-windowкоторый делает именно то, что вы ищете:

Параметр -f создает новую панель, охватывающую полную высоту окна (с -h) или полную ширину окна (с -v), вместо разделения активной панели.


3

Старый вопрос, но хотел бы добавить, если вы хотите использовать макет часто, вы можете использовать

   tmux list-windows

чтобы дать вам текущий макет (это будет как строка c904,273x74,0,0{81x74,0,0[81x29,0,0,1,81x21,0,30,2,81x22,0,52,3],191x74,82,0,0})

Затем передайте эту строку, select-layoutчтобы применить ее. Ищите select-layoutв справочной странице для получения дополнительной информации.


это отличное дополнение!
— user2297550

2

Если вы хотите создать новую третью горизонтальную панель, которая простирается на всю ширину, я предлагаю вам попробовать это

Ctrl-B "

или пролистать

Ctrl-b пробел


Благодарим за ваше предложение. Хотя я не хочу перебирать все возможные макеты, а просто создаю третью панель с желаемым макетом и положением. Но, возможно, ваше предложение - единственно возможное решение для достижения этой цели (что, я надеюсь, не так :)
— jottr

@elementz сделал двойные кавычки ctrl-b?
— kmassada

Нет. Это ctr-b "создает то, что вы можете видеть в моем третьем примере выше.
— Jottr

1

Ctrl + B затем "(двойные кавычки), чтобы разбить на два горизонтальных окна

Ctrl + B «o», чтобы переключиться обратно в верхнее окно (проверьте курсор, который скажет вам, где вы находитесь)

Ctrl + B, затем% (Shift + 5), чтобы разбить верхнее окно

Это должно работать с привязками клавиш по умолчанию.


4
Спасибо за попытку ответить на мой вопрос, но отправной точкой является НЕ чистый лист, а уже вертикально разделенное окно.
— Jottr
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.