tmux giới hạn kích thước của một cửa sổ ở mức nhỏ nhất của mỗi kích thước trong tất cả các phiên mà cửa sổ được gắn vào. Nếu nó không làm điều này, sẽ không có cách nào hợp lý để hiển thị toàn bộ khu vực cửa sổ cho tất cả các máy khách được đính kèm.
Cách dễ nhất để làm là tách bất kỳ khách hàng nào khác khỏi các phiên khi bạn đính kèm:
tmux attach -d
Thay phiên, bạn có thể di chuyển bất kỳ khách hàng khác sang một phiên khác trước khi đính kèm vào phiên:
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
Màn hình sẽ co lại lần nữa nếu máy khách nhỏ hơn chuyển sang phiên.
Ngoài ra còn có một biến thể trong đó bạn chỉ "tiếp quản" cửa sổ (liên kết cửa sổ thành một phiên mới, thiết lập aggressive-resize
và chuyển đổi bất kỳ phiên nào khác có cửa sổ đó hoạt động sang một số cửa sổ khác), nhưng nói chung khó hơn trong kịch bản trường hợp (và khác với lối ra của Wap vì bạn muốn hủy liên kết cửa sổ hoặc hủy phiên thay vì chỉ tách ra khỏi phiên).