После почти года разработки представлен релиз консольного оконного менеджера tmux ("terminal multiplexer"), разрабатываемого в рамках проекта OpenBSD в качестве распространяемой под лицензией BSD замены программы GNU Screen. Tmux позволяет организовать многооконный интерфейс в консоли, через мультиплексирование одного физического терминала на несколько виртуальных терминалов.
Наиболее заметные изменения:
- Обновлена версия протокола, что при ведёт к ошибке при попытке использования новой версии клиента tmux со старой версией серверной части (для избежания ошибки после обновления следует не забыть перезапустить сервер);
- Прекращена поддержка команды 'default-path', вместо которой для определения пути для нового окна следует использовать опцию "-c", например, 'neww -c путь'. Для определения пути при создании нового сеанса можно использовать конструкцию 'new-session -c путь';
- Объявлены устаревшими команды foo-{fg,bg,attr}, вместо которых следует использовать аналогичные опции;
- Добавлена переменная окружения TMUX_TMPDIR, позволяющая организовать хранение директории с управляющим сокетом вне временной директории, заданной переменной TMPDIR.
- Форматы теперь могут быть вложены друг в друга, один формат может расширять другой. Добавлена поддержка #{pane_syncronized} и некоторых других спецификаторов формата;
- Добавлена поддержка опции 'automatic-rename-format', позволяющей использовать в механизме автоматического переименования параметров, отличные от значений по умолчанию #{pane_current_command}';
- Обеспечена работа в окружении Cygwin;
- При отсоединении сеанса на терминал теперь выводится имя сеанса;
- Клавиша Paste позволяет вставить текст из буфера обмена в режиме копирования;
- В режиме копирования обеспечена поддержка поиска без учёта регистра символов;
- В команды attach-session и switch-client добавлена опция '-t' для выбора используемого окна или панели;
- Добавлена поддержка 256 цветов при запуске в терминале fbterm.
Основные отличия tmux от GNU Screen:
- Исходные тексты распространяются в рамках лицензии BSD. Более современная и упрощенная кодовая база (коду screen 20 лет);
- Предусмотрена возможность подключения расширений от сторонних разработчиков;
- Четко формализованная клиент-серверная модель, при которой окна выступают в роли независимых объектов, которые могут сопоставляться и перераспределяться между разными сессиями. При этом поддерживается назначение одного окна нескольким разным клиентам и передача окон от одного клиента другому;
- Наличие механизма автоматизации выполнения типовых действий, через подключение внешних скриптов. Полноценный интерфейс управления из командной строки, позволяющий управлять всеми операциями tmux из скриптов;
- Наличие нескольких независимых буферов обмена;
- Поддержка опции для ограничения размера окна. Более гибкие возможности по разбиению окон на части (поддержка вертикального разделения);
- Более ясный синтаксис для формирования содержимого строки статуса. Возможность отображения в строке статуса первой строки вывода определенной команды;
- Более экономное расходование оперативной памяти;
- Улучшенная поддержка UTF-8.