A swap-pane -s 0 -t 2
поменяет местами исходную и целевую панели, оставив среднюю без изменений.
Затем вы можете написать небольшой скрипт для вызова list-panes
, который сообщит вам текущие размеры, например
0: [40x23] [history 2/2000, 760 bytes] %0 (active)
1: [19x23] [history 2/2000, 466 bytes] %3
2: [19x23] [history 2/2000, 466 bytes] %4
, а затем выполните команды resize-pane
для каждой панели, чтобы установить новый размер в направлении x. Например, создайте /tmp/myscript
с
#!/bin/bash
tmux swap-pane -s 0 -t 2
tmux list-panes |
awk '
$1~/^[0-9]:$/ { x[$1] = substr($2,2)+0 }
END { print "tmux resize-pane -t 0 -x " x["2:"]
print "tmux resize-pane -t 1 -x " x["1:"]
print "tmux resize-pane -t 2 -x " x["0:"] }' |
sh
и делаем chmod +x /tmp/myscript
, затем добавляем к вашему ~/.tmux.conf
привязку такую как для буквы o
,набирается после вашего обычного префиксного ключа:
bind-key o run-shell /tmp/myscript
Я могу дать неудовлетворительный, но работающий ответ, попробовав несколько вещей.
При просмотре вывода pactl list cards
немного ближе, когда мой телевизор включен, запись показывала фактическое имя устройства:
[...]
hdmi-output-3: HDMI / DisplayPort 4 (priority: 5600, latency offset: 0 usec, available)
Eigenschaften:
device.icon_name = "video-display"
device.product.name = "VSX-330"
Teil der/des Profil(s): output:hdmi-stereo-extra3, output:hdmi-stereo-extra3+input:analog-stereo, output:hdmi-surround-extra3, output:hdmi-surround-extra3+input:analog-stereo, output:hdmi-surround71-extra3, output:hdmi-surround71-extra3+input:analog-stereo
[...]
Так как я ищу простой профиль стерео -, я могу получить эту конкретную запись с помощью
pactl set-card-profile 0 $(pactl list cards | grep -A1 'VSX-330' | awk '{print substr($4, 1, length($4)-1)}' | tail -1)
Это некрасиво, но, похоже, до сих пор срабатывало. Кажется, это связано с тем, что мой экран не особенно быстро регистрируется в pulseaudio, когда я подключаю свое устройство.
Надеемся, что это устранит проблему и поможет другим с похожими проблемами!