Имеет ли терминал-мультиплексор какую-либо выгоду при использовании с диспетчером оконной панели?

Оба терминальных мультиплексора (экран, tmux) и управляемые клавиатурой окна оконные менеджеры (ratpoison, dwm, xmonad) обеспечивают аналогичную функциональность. Есть ли польза в использовании обоих одновременно? Как насчет проблем, которые могут возникнуть?

4 Solutions collect form web for “Имеет ли терминал-мультиплексор какую-либо выгоду при использовании с диспетчером оконной панели?”

Я использую dwm и tmux. Прежде чем научиться использовать tmux, я бы открывал несколько терминалов для разных вещей и имел их в разных тегах. Теперь я могу запускать все внутри одного сеанса tmux под одним тегом и может отсоединяться и повторно подключаться без потери состояния, если мне нужно перезапустить X.

Дополнительное преимущество терминальных мультиплексоров заключается в том, что ваши сеансы мультиплексора все еще будут живы, и вы сможете подключиться к ним, даже если X (сеанс рабочего стола) выйдет из строя или вы вышли из X.

Используйте оба: диспетчер оконной панели и терминальный мультиплексор.

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

Фактически, я использую возможности i3 для черепицы, чтобы заменить / увеличить функциональность терминального мультиплексора для разбиения окон на окна (imho), чтобы получить лучшее из обоих миров.

Нижеприведенный скрипт используется здесь для управления подключением сеанса / обнаружения и очистки при запуске терминала:

 #!/bin/bash # This script attaches the terminal to a common session, where all # terminals can show any window of the main tmux session independently # This script also cleans up "old" sessions # Todo: Cosmetic fix-ups. Make less verbose. DEBUG="y" showRun(){ echo Will run: $@;test -z $DEBUG||read -n1 -p"Press ENTER";$@; } SNAME=${1:-XyZ} if ! tmux has -t $SNAME; then echo -n "Session $SNAME not found, creating it: " showRun exec tmux new-session -s $SNAME; else echo -n "Session $SNAME found: " MySESSION=$(tmux ls | grep -E "^$SNAME:.*\(attached\)$") echo $MySESSION; if [ -z "$MySESSION" ] ; then echo "Session $SNAME unattached, seizing it:" showRun exec tmux attach -t $SNAME \; new-window else echo "Session $SNAME already attached, finding grouped Sessions:" REGEX="group ([^)]*)" [[ $MySESSION =~ $REGEX ]] GNAME=${BASH_REMATCH[1]} GSESSIONS=$(tmux ls | grep "group $GNAME)" | grep -v $SNAME:) echo "$GSESSIONS" if [ -z "$GSESSIONS" ]; then echo "No sessions in group with $SNAME found, creating new one:" showRun exec tmux new-session -t $SNAME \; new-window else FGSESSIONS=$(echo "$GSESSIONS" | grep -v attached ) if [ -z "$FGSESSIONS" ]; then echo "No free sessions in group $GNAME found, creating new one:" showRun exec tmux new-session -t $SNAME \; new-window else echo -e "Free grouped Sessions:\n $FGSESSIONS"; if echo "$FGSESSIONS" | tail -n +2 | grep . > /dev/null; then echo "Several detached Sessions found, cleaning up:" echo "$FGSESSIONS" | while read SID x ; do if [ -z $KEEPSID ]; then KEEPSID=${SID%:*}; echo "Keeping session $KEEPSID for takeover after cleanup" else echo "Cleaning up old detached session $SID" tmux kill-session -t ${SID%:} fi; done KEEPSID=$(tmux ls|grep "group $GNAME)" | grep -v attached); KEEPSID=${KEEPSID%: *} echo "Attaching to session $KEEPSID:" showRun exec tmux attach -t $KEEPSID \; new-window else echo "Free session ( ${FGSESSIONS%: *} ) found, seizing it:" showRun exec tmux attach -t ${FGSESSIONS%: *} \; new-window fi ; fi ; fi ; fi ; fi 

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

Экран предлагает возможности последовательной консоли, но я просто использую специальное приложение (miniterm.py, распределенное с помощью python), когда мне это нужно. В противном случае я не могу придумать ничего из того, что может сделать, а другое не может, но можно сделать это проще, чем другое.

Я бы изучил тот или другой, и если вам любопытно или неудовлетворено тем, что вы выбрали, попробуйте другой. Я предпочитаю tmux, лично.

  • Красиво закрыть окна в xmonad?
  • Назначение выходного номера на выход X
  • обработка нескольких оконных менеджеров, несколько файлов .xsessionrc?
  • Самый минималистический способ переключения пользователей в X сеанс
  • Мои файлы .xsession и .xinitrc не выполняются.
  • Нужно знать, как запустить некоторые графические программы с терминала, чтобы использовать XMoand
  • dzen2 как определить фактическое разрешение и количество мониторов
  • Пробелы XMonad в полноэкранном режиме
  • Перетаскивание и изменение размеров плавающих окон в xmonad без клавиши
  • Автозапуск под случайным WM?
  • Как запустить nm-апплет в xmonad?
  • Linux и Unix - лучшая ОС в мире.