Справочники
Шпаргалка tmux
Сессии, окна, панели, режим копирования и строки для ~/.tmux.conf. Впишите свой префикс — он подставится во все сочетания.
Подставить свои значения
Показано 77 из 77 строк.
Сессии
Сессия живёт на сервере tmux, пока её не убьют: отключились по SSH — процессы внутри продолжают работать. Все горячие клавиши начинаются с префикса: нажать и отпустить его, потом клавишу.
tmux
Новая безымянная сессия.
tmux new -s work
Новая сессия с именем.
tmux new -A -s work
Подключиться к сессии, а если её нет — создать. Удобно для алиаса.
tmux ls
Список сессий.
tmux attach -t work
Подключиться к сессии; tmux a — к последней.
tmux attach -d -t work
Подключиться и отключить всех остальных клиентов: окно подстроится под ваш размер.
Ctrl+b d
Отключиться от сессии (detach), оставив её работать.
Ctrl+b s
Выбрать сессию из списка с предпросмотром.
Ctrl+b $
Переименовать текущую сессию.
Ctrl+b ( / Ctrl+b )
Предыдущая / следующая сессия.
Ctrl+b L
Вернуться в последнюю сессию.
tmux rename-session -t old new
Переименовать сессию из командной строки.
tmux kill-session -t work
Завершить сессию вместе со всеми процессами.
tmux kill-session -a
Завершить все сессии, кроме текущей.
tmux kill-server
Завершить всё: сервер tmux и все сессии.
Окна
Окно — это вкладка внутри сессии. Список окон виден в строке состояния внизу.
Ctrl+b c
Новое окно.
Ctrl+b ,
Переименовать окно.
Ctrl+b &
Закрыть окно (спросит подтверждение).
Ctrl+b n / Ctrl+b p
Следующее / предыдущее окно.
Ctrl+b 0…9
Перейти к окну по номеру.
Ctrl+b '
Перейти к окну по номеру, который спросят в строке ввода (для номеров больше 9).
Ctrl+b l
Последнее активное окно.
Ctrl+b w
Дерево сессий и окон с предпросмотром.
Ctrl+b f
Найти окно по тексту на экране.
Ctrl+b .
Переместить окно под другой номер.
tmux swap-window -s 2 -t 1
Поменять окна местами.
tmux move-window -r
Перенумеровать окна подряд, убрав дыры в номерах.
Панели
Обозначения сбивают с толку: % делит окно на левую и правую половины (split-window -h), а " — на верхнюю и нижнюю (split-window -v).
Ctrl+b %
Разделить окно на левую и правую панели.
Ctrl+b "
Разделить окно на верхнюю и нижнюю панели.
Ctrl+b ←↑→↓
Перейти в соседнюю панель стрелкой.
Ctrl+b o
Следующая панель по кругу.
Ctrl+b ;
Предыдущая активная панель.
Ctrl+b q
Показать номера панелей; нажать цифру, пока они видны, — перейти.
Ctrl+b z
Развернуть панель на всё окно и обратно (zoom).
Ctrl+b x
Закрыть панель (спросит подтверждение).
Ctrl+b !
Вынести панель в отдельное окно.
Ctrl+b { / Ctrl+b }
Поменять панель местами с предыдущей / следующей.
Ctrl+b Ctrl+o
Повернуть панели окна по кругу.
Ctrl+b Пробел
Следующая готовая раскладка панелей.
Ctrl+b Alt+1…Alt+5
Раскладки: в ряд, в столбец, главная сверху, главная слева, плиткой.
Ctrl+b Ctrl+стрелка
Изменить размер панели на одну ячейку.
Ctrl+b Alt+стрелка
Изменить размер панели на пять ячеек.
tmux resize-pane -D 10
Растянуть панель вниз на 10 строк; -U, -L, -R — в другие стороны.
tmux select-layout tiled
Раскладка плиткой: все панели одного размера.
tmux setw synchronize-panes on
Набор с клавиатуры уходит во все панели окна сразу — например, на несколько серверов.
Прокрутка и копирование
Колесо мыши в tmux по умолчанию не прокручивает историю — для этого есть режим копирования. Клавиши внутри него зависят от mode-keys: emacs (по умолчанию) или vi.
Ctrl+b [
Войти в режим копирования и листать историю; q — выйти.
Ctrl+b PgUp
Войти в режим копирования сразу с прокруткой на страницу вверх.
Ctrl+Пробел … Alt+w
Emacs-режим: начать выделение и скопировать в буфер tmux.
Пробел … Enter
Vi-режим: начать выделение и скопировать в буфер tmux.
/ и ?
Vi-режим: поиск вниз и вверх; n — следующее совпадение.
Ctrl+s и Ctrl+r
Emacs-режим: поиск вперёд и назад.
Ctrl+b ]
Вставить последний скопированный буфер.
Ctrl+b =
Выбрать буфер из списка и вставить.
Ctrl+b #
Показать все буферы.
tmux capture-pane -p -S -3000 > out.txt
Сохранить последние 3000 строк панели в файл.
Команды и скрипты
Ctrl+b :
Командная строка tmux: сюда вводятся команды без слова tmux.
Ctrl+b ?
Список всех привязанных клавиш.
Ctrl+b t
Большие часы на всю панель.
Ctrl+b ~
Последние сообщения tmux.
tmux new -d -s work "npm run build"
Запустить долгую команду в фоновой сессии и сразу вернуться в шелл.
tmux send-keys -t work:0 "npm run dev" Enter
Набрать команду в окне сессии со стороны — основа скриптов раскладки.
tmux split-window -h -c "#{pane_current_path}"
Новая панель в той же папке, что и текущая.
tmux display -p '#S:#I.#P'
Напечатать сессию, окно и панель, где вы сейчас.
tmux list-keys
Все привязки клавиш с их командами.
tmux source-file ~/.tmux.conf
Перечитать конфиг без перезапуска.
~/.tmux.conf
Строки для конфига. После правки — tmux source-file ~/.tmux.conf или перезапуск сервера.
set -g prefix C-a unbind C-b bind C-a send-prefix
Префикс Ctrl+a, как в screen; двойное нажатие отправит Ctrl+a программе.
set -g mouse on
Мышь: выбор панели, изменение размера и прокрутка колесом (tmux 2.1+).
set -g base-index 1 setw -g pane-base-index 1
Нумерация окон и панелей с единицы — ближе к цифрам на клавиатуре.
set -g renumber-windows on
Перенумеровывать окна после закрытия одного из них.
set -g history-limit 50000
Длиннее история прокрутки (по умолчанию 2000 строк).
setw -g mode-keys vi
Клавиши vi в режиме копирования.
bind -T copy-mode-vi v send -X begin-selection bind -T copy-mode-vi y send -X copy-selection-and-cancel
v и y в режиме копирования — как в Vim.
set -sg escape-time 10
Убрать задержку после Esc — иначе Vim внутри tmux тормозит при выходе из режима вставки.
set -g default-terminal "tmux-256color"
256 цветов и корректные курсив и подчёркивание.
bind | split-window -h -c "#{pane_current_path}" bind - split-window -v -c "#{pane_current_path}"
Запоминающиеся клавиши деления с сохранением текущей папки.
bind r source-file ~/.tmux.conf \; display "Конфиг перечитан"
Перечитать конфиг по префиксу и r.
set -g set-clipboard on
Отдавать скопированное в системный буфер через OSC 52, если терминал это умеет.