2015-05-08

tmux 2.0

После более года разработки представлен релиз консольного оконного менеджера tmux 2.0 ("terminal multiplexer"), разрабатываемого в рамках проекта OpenBSD в качестве распространяемой под лицензией BSD замены программы GNU Screen. Tmux позволяет организовать многооконный интерфейс в консоли, через мультиплексирование одного физического терминала на несколько виртуальных терминалов.

Наиболее заметные изменения в tmux 2.0:
  • Обеспечено отражение сеансов в базе utmp (работает, если на этапе сборки в системе присутствовала библиотека utempter);
  • Прекращена поддержка команды 'choose-list'. Удалены опции 'monitor-content' и 'pane_start_path'. Из категории сессионных в серверные переведены опции 'terminal-overrides' и 'message-limit';
  • В команду "set-buffer" добавлен режим дополнения ("-a"). В режиме копирования (copy-mode) представлена команда 'append-selection';
  • В режиме выбора (choose-mode) реализованы команды, которые могут привязываться к другим командам: start-of-list, end-of-list, top-line, bottom-line;
  • В команде choose-buffer реализована поддержка UTF-8;
  • Применён комбинированный способ навигации по панелям: если есть только один возможный вариант выбора панели, то выбирается она, в противном случае осуществляется переход к последней используемой панели;
  • В команды 'new-session', 'new-window', 'split-window' и 'respawn-pane' добавлена возможность использования нескольких аргументов и корректной обработки данных в кавычках;
  • В команду 'capture-pane' добавлены опции '-S-' и '-E-' , подразумевающие начало и конец панели;
  • Изменена поддержка привязки функциональных клавиш с номерами выше F12: номера F13-F24 теперь эквивалентны Shift+F1-F12, F25-F36 - Ctrl+F1-F12, F37-F48 - Ctrl+Shift+F1-F12, F49-F60 - Menu+F1-F12, F61-F63 - Menu+Shift+F1-F12;
  • Возможность использования идентификатора панели внутри спецификатора сеанса или окна (session-of-%1 или window-of-%1), а также идентификатора окна в спецификаторе сеансе (session-of-@1);
  • Поддержка определения формата (-F) для команд 'copy-pipe' и 'if-shell';
  • В команды 'split-window' и 'join-window' добавлена опция "-b" для создания панели слева или выше целевой панели. 

Основные отличия tmux от GNU Screen:
  • Исходные тексты распространяются в рамках лицензии BSD. Более современная и упрощенная кодовая база (коду screen 20 лет);
  • Предусмотрена возможность подключения расширений от сторонних разработчиков;
  • Четко формализованная клиент-серверная модель, при которой окна выступают в роли независимых объектов, которые могут сопоставляться и перераспределяться между разными сессиями. При этом поддерживается назначение одного окна нескольким разным клиентам и передача окон от одного клиента другому;
  • Наличие механизма автоматизации выполнения типовых действий, через подключение внешних скриптов. Полноценный интерфейс управления из командной строки, позволяющий управлять всеми операциями tmux из скриптов;
  • Наличие нескольких независимых буферов обмена;
  • Поддержка опции для ограничения размера окна. Более гибкие возможности по разбиению окон на части (поддержка вертикального разделения);
  • Более ясный синтаксис для формирования содержимого строки статуса. Возможность отображения в строке статуса первой строки вывода определенной команды;
  • Более экономное расходование оперативной памяти;
  • Улучшенная поддержка UTF-8. 


source1
source2

Комментариев нет:

Отправить комментарий