Skip to main content

Tmux

Настройка

Tmux можно настроить как для текущего пользователя(~/.tmux.conf) так и для всей системы.

С версии 2.1 для включения режима мыши (прокручивание, изменение размера панели, выбор панели и др.) нужно добавить в tmux.conf строку:

set -g mouse on

До версии 2.1 это было так:

set -g mouse-resize-pane on
set -g mouse-select-pane on
set -g mouse-select-window on
set -g mode-mouse on

Работа с tmux

Для работы с tmux используется широкий набор горячих клавиш, состоящих из базового сочетания Ctrl + b и отдельных целевых клавиш: n,p,w,b и т.д.

Работа с сеансами в tmux

Для создания рабочего сеанса без идентификатора — достаточно ввести tmux в терминале. Будет создан сеанс 0:

изображение.png

Идентификатор сеанса отображается внизу слева в квадратных скобках. Для создания именного сеанса достаточно ввести команду tmux new -s название сеанса.

Поскольку tmux завершает соединение с сохранением состояния сеанса, правильным способом возобновить работу tmux будет его запуск командой tmux attach || tmux new.

Команда запускает проверку уже созданных сеансов и если активных подключений нет — создается новое подключение.

Просмотреть список созданных сеансов можно командой tmux ls.

Команда вернёт список вида 0: 1 windows (created Mon Aug 30 13:02:31 2021) (attached).

Если в списке один сеанс, то командой tmux attach он будет автоматически восстановлен, а если в списке несколько сеансов — необходимо ввести команду tmux attach -t наименование сеанса.

В нашем случае сеанс называется 0.

Сменить сеанс можно также, находясь в другом сеансе. Для этого нужно воспользоваться сочетанием клавиш Ctrl + b, s.

изображение.png

Выйти из сеанса можно с помощью сочетания клавиш Ctrl + b, d, а завершить его командой tmux kill-session -t название сеанса.

Закрыть все сеансы можно командой tmux kill-server.

Создание окон и переключение между ними

Чтобы создать окно — применяется сочетание клавиш: Ctrl + b, а затем c. Просмотреть список окон можно сочетанием — Ctrl + b, а затем w. Выбор конкретного окна из списка осуществляется стрелками и .

Переключиться между окнами можно с помощью следующих сочетаний клавиш:

  • Ctrl + b, n — следующее окно;
  • Ctrl + b, p — предыдущее окно;
  • Ctrl + b, номер окна (цифрой ) — переключиться на нужное окно.

Горизонтальное и вертикальное деление окон

Окна сеансов tmux можно разделять вертикально и горизонтально. Для горизонтального разделения окна используется сочетание клавиш Ctrl + b, ".

изображение.png

Чтобы разделить окно вертикально на две равные панели — воспользуйтесь сочетанием клавиш Ctrl + b, %.

изображение.png

Перемещаться между панелями можно с помощью сочетаний клавиш Ctrl + b и стрелок.

Панели тоже можно разделять. Например, если нужно получить 3 панели, сначала окно делится горизонтально (Ctrl + b,"), затем осуществляется переход на нужную панель (Ctrl + b, или ) и она делится вертикально (Ctrl + b, %). Получаем следующую рабочую зону:

изображение.png

Закрыть панель (часть окна) можно с помощью сочетания клавиш Ctrl + b, x или командой exit.

Команд и горячих клавиш tmux немало, но при ежедневной практике они довольно быстро выучиваются, однако новички поначалу путаются в них, поэтому мы составили список часто используемых команд и горячих клавиш tmux, и положили их в одно место.

Список часто используемых команд и горячих клавиш tmux

Команды для управления сеансами:

  • tmux new [имя_сеанса] — начать новый сеанс. Имя_сеанса опционально;
  • tmux attach -t [имя_сеанса] — подключиться к уже существующему сеансу. Если имя заранее не было задано, тогда команда будет выглядеть так: tmux attach -t 0;
  • tmux ls — список открытых сеансов tmux;
  • tmux kill-server — остановить все запущенные сеансы;
  • tmux kill-session -t [имя_сеанса] — завершить сеанс;
  • tmux list-clients -t [имя_сеанса] — посмотреть клиентов, подключенных к сеансу;
  • tmux list-sessions — вывести список всех запущенных сеансов.

Горячие клавиши для управления окнами:

  • Ctrl + b, c — создать новое окно;
  • Ctrl + b, w — просмотреть список окон;
  • Ctrl + b, n — следующее окно;
  • Ctrl + b, p — предыдущее окно;
  • Ctrl + b, номер окна (цифрой) — переключиться на нужное окно;
  • Ctrl + b, " — горизонтальное разделение окна;
  • Ctrl + b, %— вертикальное разделение окна.

С уверенностью можно сказать, что tmux — это простой и мощный консольный инструмент, позволяющая полностью настроить под себя рабочие пространство в терминале. Сила tmux в его гибкости и сочетании с другими консольными инструментами, например: VIM, Htop, Tree.