#!/bin/sh # # tmux-detach-all-but-current-client # Copyright (C) 2013-2014 Dustin Kirkland # # Authors: Dustin Kirkland <kirkland@byobu.org> # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, version 3 of the License. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. a1= a2= tty1= tty2= # List all clients, ordered by most recent activity descending for c in $(tmux list-clients -F "#{client_activity}___#{client_tty}" | sort -n -r); do if [ -z "$a1" ]; then a1=${c%%___*} tty1=${c##*___} elif [ -z "$a2" ]; then a2=${c%%___*} tty2=${c##*___} fi if [ -n "$a1" ] && [ -n "$a2" ]; then if [ "$a1" = "$a2" ]; then # Activity timestamps match in top 2 attached clients # Let's not detach anyone here! tmux display-message "Multiple active attached clients detected, refusing to detach" >/dev/null 2>&1 elif [ -n "$tty1" ]; then # Detach all but the current client, iterating across each # Tempting to use detach-client -a -t here, but there's a bug # in there, keeping that from working properly tmux detach-client -t "$tty2" >/dev/null 2>&1 a2= fi fi done
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
__pycache__ | Folder | 0755 |
|
|
colors | File | 1.02 KB | 0755 |
|
common | File | 1.91 KB | 0755 |
|
config.py | File | 10.46 KB | 0755 |
|
constants | File | 2.34 KB | 0755 |
|
cycle-status | File | 1.35 KB | 0755 |
|
dirs | File | 2.58 KB | 0755 |
|
ec2instancespricing.py | File | 23.85 KB | 0755 |
|
icons | File | 1.84 KB | 0755 |
|
mondrian | File | 4.46 KB | 0755 |
|
notify_osd | File | 1.74 KB | 0755 |
|
select-session.py | File | 6.64 KB | 0755 |
|
shutil | File | 8.5 KB | 0755 |
|
tmux-detach-all-but-current-client | File | 1.56 KB | 0755 |
|
tmux-send-command-to-all-panes | File | 955 B | 0755 |
|
tmux-send-command-to-all-windows | File | 881 B | 0755 |
|
toggle-utf8 | File | 1.65 KB | 0755 |
|