LINUX.ORG.RU

История изменений

Исправление shaplov, (текущая версия) :

Нерешенная проблема с индивидуальным хуком на закрытие панели в tmux

Я просто оставлю это здесь

Обнаружено что в tmux (как минимум в 3.3a ) есть возможность установки индивидуальных хуков на окно и на панель, но для случая когда то на что вешается этот хук уничтожается, хуки почему-то не отрабатывают.

Например

#!/bin/sh

SLEEP=10

P1=`tmux split-window -d -P  -F '#{pane_id}' -h 'echo This is a PLACEHOLDER pane; while true ; do sleep 1 ; done'`
P2=`tmux new-window -P -d -n sleep-pane -F '#{pane_id}' "sleep $SLEEP"`
P3=`tmux set-hook -p -t $P2  pane-exited[0] 'run-shell -b "echo woke up > res "' 2>&1`   

echo $P1 $P2 $P3 >panes.log

При запуске его tmux new-session ./test.sh к появлению надписи «woke up» в файле res не приводит.

При этом если хук на закрытие сделать глобальным

P3=`tmux set-hook -g pane-exited[0] 'run-shell -b "echo woke up > res "'`

То все отрабатывает.

В апстриме проблему подтверждают: https://github.com/tmux/tmux/issues/3736 но если и починят, то неизвестно когда…

https://gitlab.com/mugenbudo-dev/ideas-tracker/-/issues/5

Исправление shaplov, :

Нерешенная проблема с индивидуальным хуком на закрытие панели в tmux

Я просто оставлю это здесь

Обнаружено что в tmux (как минимум в 3.3a ) есть возможность установки индивидуальных хуков на окно и на панель, но для случая когда то на что вешается этот хук уничтожения, хучи почему-то не отрабатывают.

Например

#!/bin/sh

SLEEP=10

P1=`tmux split-window -d -P  -F '#{pane_id}' -h 'echo This is a PLACEHOLDER pane; while true ; do sleep 1 ; done'`
P2=`tmux new-window -P -d -n sleep-pane -F '#{pane_id}' "sleep $SLEEP"`
P3=`tmux set-hook -p -t $P2  pane-exited[0] 'run-shell -b "echo woke up > res "' 2>&1`   

echo $P1 $P2 $P3 >panes.log

При запуске его tmux new-session ./test.sh к появлению надписи «woke up» в файле res не приводит.

При этом если хук на закрытие сделать глобальным

P3=`tmux set-hook -g pane-exited[0] 'run-shell -b "echo woke up > res "'`

То все отрабатывает.

В апстриме проблему подтверждают: https://github.com/tmux/tmux/issues/3736 но если и починят, то неизвестно когда…

https://gitlab.com/mugenbudo-dev/ideas-tracker/-/issues/5

Исправление shaplov, :

Нерешенная проблема с индивидуальным хуком на закрытие панели в tmux

Я просто оставлю это здесь

Обнаружено что в tmux (как минимум в 3.3a ) есть возможность установки индивидуальных хуков на окно и на панель, но для случая когда то на что вешается этот хук уничтожается, хучи почему-то не отрабатывают.

Например

#!/bin/sh

SLEEP=10

P1=`tmux split-window -d -P  -F '#{pane_id}' -h 'echo This is a PLACEHOLDER pane; while true ; do sleep 1 ; done'`
P2=`tmux new-window -P -d -n sleep-pane -F '#{pane_id}' "sleep $SLEEP"`
P3=`tmux set-hook -p -t $P2  pane-exited[0] 'run-shell -b "echo woke up > res "' 2>&1`   

echo $P1 $P2 $P3 >panes.log

При запуске его tmux new-session ./test.sh к появлению надписи «woke up» в файле res не приводит.

При этом если хук на закрытие сделать глобальным

P3=`tmux set-hook -g pane-exited[0] 'run-shell -b "echo woke up > res "'`

То все отрабатывает.

В апстриме проблему подтверждают: https://github.com/tmux/tmux/issues/3736 но если и починят, то неизвестно когда…

https://gitlab.com/mugenbudo-dev/ideas-tracker/-/issues/5

Исходная версия shaplov, :

*** Нерешенная проблема с индивидуальным хуком на закрытие панели в tmux *** Я просто оставлю это здесь

Обнаружено что в tmux (как минимум в 3.3a ) есть возможность установки индивидуальных хуков на окно и на панель, но для случая когда то на что вешается этот хук уничтожается, хучи почему-то не отрабатывают.

Например

#!/bin/sh

SLEEP=10

P1=`tmux split-window -d -P  -F '#{pane_id}' -h 'echo This is a PLACEHOLDER pane; while true ; do sleep 1 ; done'`
P2=`tmux new-window -P -d -n sleep-pane -F '#{pane_id}' "sleep $SLEEP"`
P3=`tmux set-hook -p -t $P2  pane-exited[0] 'run-shell -b "echo woke up > res "' 2>&1`   

echo $P1 $P2 $P3 >panes.log

При запуске его tmux new-session ./test.sh к появлению надписи «woke up» в файле res не приводит.

При этом если хук на закрытие сделать глобальным

P3=`tmux set-hook -g pane-exited[0] 'run-shell -b "echo woke up > res "'`

То все отрабатывает.

В апстриме проблему подтверждают: https://github.com/tmux/tmux/issues/3736 но если и починят, то неизвестно когда…

https://gitlab.com/mugenbudo-dev/ideas-tracker/-/issues/5