tmux एक विंडो के आयामों को उन सभी सत्रों में सबसे छोटे आयामों तक सीमित करता है जिनमें खिड़की जुड़ी होती है। यदि ऐसा नहीं किया तो सभी संलग्न ग्राहकों के लिए पूरे विंडो क्षेत्र को प्रदर्शित करने का कोई समझदार तरीका नहीं होगा।
सबसे आसान काम यह है कि जब आप संलग्न हों तो सत्रों से किसी अन्य ग्राहक को अलग कर लें:
tmux attach -d
वैकल्पिक रूप से, आप सत्र को संलग्न करने से पहले किसी भी अन्य ग्राहकों को एक अलग सत्र में स्थानांतरित कर सकते हैं:
takeover() {
# create a temporary session that displays the "how to go back" message
tmp='takeover temp session'
if ! tmux has-session -t "$tmp"; then
tmux new-session -d -s "$tmp"
tmux set-option -t "$tmp" set-remain-on-exit on
tmux new-window -kt "$tmp":0 \
'echo "Use Prefix + L (i.e. ^B L) to return to session."'
fi
# switch any clients attached to the target session to the temp session
session="$1"
for client in $(tmux list-clients -t "$session" | cut -f 1 -d :); do
tmux switch-client -c "$client" -t "$tmp"
done
# attach to the target session
tmux attach -t "$session"
}
takeover 'original session' # or the session number if you do not name sessions
यदि एक छोटा ग्राहक सत्र में स्विच करता है तो स्क्रीन फिर से सिकुड़ जाएगी।
एक भिन्नता भी है जहाँ आप केवल विंडो को "टेक ओवर" करते हैं (विंडो को नए सत्र में लिंक करते हैं, सेट करते हैं aggressive-resize
और किसी भी अन्य सत्र को स्विच करते हैं, जिसमें वह विंडो किसी अन्य विंडो में सक्रिय होती है), लेकिन सामान्य रूप से स्क्रिप्ट के लिए कठिन है मामला (और "बाहर निकलने के लिए अलग" चूंकि आप विंडो को अनलिंक करना चाहते हैं या सत्र से बस हटाने के बजाय सत्र को मार सकते हैं)।