tmux begrenzt die Abmessungen eines Fensters auf die kleinste jeder Dimension in allen Sitzungen, an die das Fenster angehängt ist. Andernfalls wäre es nicht sinnvoll, den gesamten Fensterbereich für alle angeschlossenen Clients anzuzeigen.
Am einfachsten ist es, andere Clients von den Sitzungen zu trennen, wenn Sie Folgendes anhängen:
tmux attach -d
Alternativ können Sie andere Clients in eine andere Sitzung verschieben, bevor Sie eine Verbindung zur Sitzung herstellen:
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
Der Bildschirm wird wieder verkleinert, wenn ein kleinerer Client zur Sitzung wechselt.
Es gibt auch eine Variante, bei der Sie nur das Fenster "übernehmen" (das Fenster in eine neue Sitzung einbinden aggressive-resize
, alle anderen Sitzungen, in denen dieses Fenster aktiv ist , festlegen und zu einem anderen Fenster wechseln), aber es ist im Allgemeinen schwieriger, Skripte zu erstellen case (und anders als "exit", da Sie die Verknüpfung des Fensters aufheben oder die Sitzung beenden möchten, anstatt sich nur von der Sitzung zu trennen).