Tmux — это приложение-мультиплексор терминала с открытым исходным кодом для эффективного управления несколькими окнами терминала. Люди, которые ранее использовали приложение Terminator, в первую очередь знакомы с понятием управления вкладками в терминале Linux. С помощью Tmux мы можем разделить терминал на несколько панелей. Мы можем настраивать эти панели, перемещая их, изменяя размер и переключаясь между ними. Это помогает облегчить управление несколькими окнами и вкладками терминала Gnome.
Как правило, когда вы закрываете соединение SSH, соответствующие сеансы удаленного терминала также закрываются. Здесь приходит на помощь Tmux, поскольку он сохраняет эти сеансы, когда соединение SSH завершается.
После установки Tmux вы не найдете связанного с ним значка. Оно не появится как отдельное приложение; вместо этого нам придется вызывать его из самого терминала Gnome. Позже мы увидим, как это сделать.
В этом руководстве вы узнаете о том, «Как настроить конфигурацию tmux?». Мы будем использовать Ubuntu 20.04 в качестве базовой системы для этого руководства.
Предпосылки
Чтобы настроить конфигурацию tmux, нам нужно изменить его файл конфигурации по умолчанию: tmux.conf. Этот файл вызывается Tmux при запуске. Tmux сначала ищет файл конфигурации системы внутри каталога ‘ /etc/tmux.conf’ , если он отсутствует, он затем ищет в домашнем каталоге пользователя. Файл содержит список команд Tmux, которые выполняются последовательно. Эти команды выполняются при самом первом запуске сервера tmux.
Примечание. Прежде чем приступить к настройке tmux.conf, будьте осторожны, чтобы не испортить конфигурацию, смешивая несколько ярлыков. Чтобы избежать такой двусмысленности, вы должны просмотреть все занятые ярлыки Tmux, введя следующую команду внутри сеанса Tmux:
‘Prefix’ + ?
Префиксная клавиша («Ctrl+b») вместе с командной клавишей управляет различными операциями Tmux. Это комбинация по умолчанию, которую большинство пользователей склонны менять для удобства. Но изменение этой клавиши требует некоторого ума, чтобы мы не могли испортить другие ярлыки терминала по умолчанию, над которым мы работаем.
Давайте изменим этот префикс на «Alt+b». Откройте файл tmux.conf. Если он находится в вашем домашнем каталоге, используйте команду:
$ sudo nano ~/.tmux.conf
Поместите следующие строки в этот файл и сохраните его.
# изменение префикса с 'Ctrl+b' на 'Alt+b' unbind C-b set-option -g prefix M-b bind-key M-b send-prefix
Если вы находитесь внутри сеанса Tmux, выйдите из текущего сеанса и начните новый сеанс Tmux. Вы также можете перезагрузить файл конфигурации tmux, чтобы изменения заработали.
Мы также можем установить два префикса; например, приведенные ниже команды tmux будут устанавливать как «Alt+b», так и «Ctrl+b» в качестве префиксов. Откройте файл tmux.conf и введите:
# Установка двух префиксов: от 'Ctrl+b' до 'Alt+b' set-option -g prefix M-b set-option -g prefix2 C-b
Теперь перезагрузите файл tmux.conf.
Мы можем использовать файл tmux.conf, чтобы настроить поведение мыши при прокрутке. Откройте файл и поместите следующую строку:
set -g mouse on
Теперь перезагрузите tmux.conf с помощью команды:
$ tmux source-file ~/.tmux.conf
Как только вышеуказанные задачи будут выполнены, мы можем использовать сенсорную панель или компьютерную мышь для прокрутки нашего терминала Tmux.
Много раз мы часто настраиваем tmux в соответствии с нашими потребностями; в результате нам нужно очень часто перезагружать файл конфигурации. Команда для перезагрузки tmux.conf во время работы:
$ tmux source-file <path to the tmux.conf file>
Давайте создадим удобный ярлык для этого. Откройте файл tmux.conf и поместите в него следующую строку:
bind r source-file ~/.tmux.conf
В следующий раз, когда вам нужно будет перезагрузить файл конфигурации, вам нужно будет ввести только префикс, за которым следует «r».
Ярлык Tmux по умолчанию для разделения терминала очень неудобен. Давайте изменим его на что-то более удобное. Например, мы будем сопоставлять горизонтальное разделение с ‘-’ от ‘ “ ‘ и вертикальное разделение с ‘%’ на ‘|.’.
Откройте файл tmux.conf и добавьте следующие строки:
# Разделение терминалов с помощью | и - unbind '"' unbind % bind - split-window -h bind | split-window -v
Несложно скопировать содержимое из системного буфера обмена и вставить его в сеанс Tmux, используя обычную комбинацию клавиш «Ctrl+Shift+v». Однако обратная процедура не так проста. Мы можем упростить это, установив утилиту xclip и настроив файл tmux.conf. Следуйте инструкциям ниже:
Шаг 1. Сначала установите «xclip» в Ubuntu 20.04 с помощью команды:
$ sudo apt install xclip
Шаг 2. Теперь мы настроим tmux.conf , добавив следующую строку:
bind C-c run "tmux save-buffer - | xclip -i -sel clipboard" bind C-v run "tmux set-buffer "$(xclip -o -sel clipboard)"; tmux paste-buffer"
Первая линия делает «префикс» следует «Ctrl + C» , чтобы захватить текущее Tmux буфера и передает этот вывод в “Xclip. Теперь мы можем вставить скопированный текст из буфера обмена Tmux, используя системный буфер обмена.
Вторая строка настраивает префикс «» следует «Ctrl + V», чтобы вставить текст из системного буфера обмена на сессии Tmux, но , как уже говорилось ранее, это просто скопировать и вставить из системного буфера обмена Tmux сессии ( с помощью Ctrl + Shift+V ). Таким образом, вам может не понадобиться вторая строка. Если это не работает, то необходимо добавить вторую строку.
Советы: Мы также можем определить привязку клавиш, для которой не потребуется префикс. Например, чтобы перезагрузить файл конфигурации, используя только «Ctrl+r», используйте команду bind, как показано здесь:
bind-key -n C-r source-file ~/.tmux.conf
Но это отключит эту конкретную комбинацию клавиш в других приложениях, работающих в сеансе Tmux, поэтому используйте ее осторожно.
В этом руководстве мы узнали много способов настройки конфигурации Tmux с помощью tmux.conf. Есть еще много способов изменить внешний вид среды Tmux. Более подробное объяснение различных операций Tmux можно найти на справочных страницах Tmux или на странице Tmux на Github.