tmux
Параметры для команд
-a,-bafter/before для target-dне переключаться в новое окно/панель, остаться в текущем-nname-h,-v— горизонтальное/вертикальное размещение (не разделение)
Размещение панелей
Параметры -h, -v указывают размещение панелей. Размещение не то же самое что разделение.
При горизонтальном размещении панели встают слева направо — горизонтально. При вертикальном размещении панели располагаются сверху вниз — вертикально.
Перемещение окон и панелей
target-window указывается в формате session:window.
target-pane указывается в формате session:window.pane. Если же символы : и . пропущены, то значение будет считаться индексом панели в окне.
tmux не умеет перемещать окна и панели с автоматическим сдвигом остальных окон/панелей. Команда swap-... меняет местами. Команда move-window перемещает окно в незанятый индекс. Если же вызвать move-window -k — то если целевое окно существует — tmux его уничтожит.
Перемещение окон
# переместить окно чтоб оно стало 3-им по индексу, остаться в окне
swap-window -d -t:3
# поменяться местами с предыдущим окном
swap-window -d -t:-1
Перемещение панелей
Для пемещения панелей есть только swap-pane — команда меняет панели местами. Она не умеет перетаскивать панель с автоматическим сдвигом остальных панелей.
swap-pane— меняет панели местами.
# поменяться местами с предыдущей панелью
swap-pane -U
# переместить в окно #1
move-pane -h -t:1
# переместить в предыдущее окно
move-pane -h -t:-1
# переместить в следующее окно, вставить между первой и второй панелью
move-pane -h -t:+1.1
# Переместить панель в новое (несуществующее) окно
break-pane -n newWindow
Некоторые команды
select-pane -T newTitle— переименовать заголовок панели. Отображается в статус бареrun-shell— вызов команды в shell
Показ display menu
tmux позволяет вызывать своё меню с возможностью выбора пунктов, на каждый пункт навешивать свои команды.
Пункты описываются в виде: {пункт} {клавиша} {команда}
- пункт — отображаемый текст в пункте меню
- клавиша — быстрая клавиша для выбора пункта. Можно выбирать так же стрелками и Enter'ом
- команда — команда либо набор tmux команд, разделённых точкой с запятой, которые будут выполнены
Можно указывать несколько команд
Если указать пустой пункт, то выведется разделительная линияПараметры:
-T— отображаемый заголовок окна
Пример. Назначим клавишу Q (в верхнем регистре) для вызова меню выбора преднастроенных раскладок
bind-key Q \
display-menu -T 'Предзаготовленные раскладки' \
'my-site layout' e 'new-window -b -c /hdd/sites/my-site -n my-site' \
'elk layout' q 'new-window -a -n elk -c /hdd/docker/elk; split-window -h -d -c /hdd/docker/elk/logstash; split-window -v -d -c /hdd/docker/elk/elastic' \
ctrl b Q вызовет показ нашего меню
Вызов команд через display-menu с выводом результата в отдельное окно
С помощью display-popup можно вызывать shell команды с выводом результата во всплывающее окно.
В зависимости от версии tmux для display-popup доступен параметр -T, с помощью которого можно установить заголовок для всплывающего окна