nnn

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

commit 65e306feec4a379a162e898236a1b9764588cec8
parent 74785069e0290af6cdff1563856b2b04d7e6f190
Author: Luuk van Baal <luukvbaal@gmail.com>
Date:   Sat,  1 May 2021 18:12:13 +0200

preview-tui: fix cleanup/resize

Diffstat:
Mplugins/preview-tui | 17++++++++++-------
Mplugins/preview-tui-ext | 17++++++++++-------
2 files changed, 20 insertions(+), 14 deletions(-)

diff --git a/plugins/preview-tui b/plugins/preview-tui @@ -156,7 +156,7 @@ fifo_pager() { exec > "$tmpfifopath" if [ "$cmd" = "pager" ]; then if exists bat; then - bat --terminal-width="$(tput cols)" --paging=never --decorations=always --color=always "$@" & + bat --terminal-width="$(tput cols)" --paging=never --decorations=always --color=always "$@" 2>/dev/null & else $PAGER "$@" & fi @@ -275,9 +275,9 @@ ueberzug_refresh() { pkill -P "$$" >/dev/null 2>&1 pkill -f -n preview-tui-ext >/dev/null 2>&1 tail --follow "$FIFO_UEBERZUG" | ueberzug layer --silent --parser json & - preview_file "$(cat "$CURSEL")" printf "\n" > "$NNN_FIFO" preview_fifo 2>/dev/null & + preview_file "$(cat "$CURSEL")" wait } @@ -292,20 +292,23 @@ preview_fifo() { preview_file "$selection" printf "%s" "$selection" > "$CURSEL" done - [ "$TERMINAL" != "kitty" ] && exists ueberzug && rm "$FIFO_UEBERZUG" - rm "$PAGERPID" "$GIFPID" "$CURSEL" >/dev/null 2>&1 + kill "$(cat "$GIFPID" 2>/dev/null)" >/dev/null 2>&1 + kill "$(cat "$PAGERPID" 2>/dev/null)" >/dev/null 2>&1 + [ "$TERMINAL" != "kitty" ] && exists ueberzug && ueberzug_remove + rm "$PAGERPID" "$GIFPID" "$CURSEL" "$FIFO_UEBERZUG" >/dev/null 2>&1 pkill -P "$$" >/dev/null 2>&1 } if [ "$PREVIEW_MODE" ]; then if [ "$TERMINAL" != "kitty" ] && exists ueberzug; then mkfifo "$FIFO_UEBERZUG" - trap 'ueberzug_refresh; rm $FIFO_UEBERZUG' WINCH + trap 'ueberzug_refresh; rm "$FIFO_UEBERZUG"' WINCH tail --follow "$FIFO_UEBERZUG" | ueberzug layer --silent --parser json & fi - trap 'rm "$PAGERPID" "$GIFPID" "$CURSEL" 2>/dev/null' INT HUP EXIT + trap 'rm "$PAGERPID" "$GIFPID" "$CURSEL" "$FIFO_UEBERZUG" 2>/dev/null' INT HUP EXIT - preview_file "$1" + preview_file "$PWD/$1" + printf "%s" "$PWD/$1" > "$CURSEL" & preview_fifo 2>/dev/null & wait else diff --git a/plugins/preview-tui-ext b/plugins/preview-tui-ext @@ -176,7 +176,7 @@ fifo_pager() { exec > "$tmpfifopath" if [ "$cmd" = "pager" ]; then if exists bat; then - bat --terminal-width="$(tput cols)" --paging=never --decorations=always --color=always "$@" & + bat --terminal-width="$(tput cols)" --paging=never --decorations=always --color=always "$@" 2>/dev/null & else $PAGER "$@" & fi @@ -384,9 +384,9 @@ ueberzug_refresh() { pkill -P "$$" >/dev/null 2>&1 pkill -f -n preview-tui-ext >/dev/null 2>&1 tail --follow "$FIFO_UEBERZUG" | ueberzug layer --silent --parser json & - preview_file "$(cat "$CURSEL")" printf "\n" > "$NNN_FIFO" preview_fifo 2>/dev/null & + preview_file "$(cat "$CURSEL")" wait } @@ -401,20 +401,23 @@ preview_fifo() { preview_file "$selection" printf "%s" "$selection" > "$CURSEL" done - [ "$TERMINAL" != "kitty" ] && exists ueberzug && rm "$FIFO_UEBERZUG" - rm "$PAGERPID" "$GIFPID" "$CURSEL" >/dev/null 2>&1 + kill "$(cat "$GIFPID" 2>/dev/null)" >/dev/null 2>&1 + kill "$(cat "$PAGERPID" 2>/dev/null)" >/dev/null 2>&1 + [ "$TERMINAL" != "kitty" ] && exists ueberzug && ueberzug_remove + rm "$PAGERPID" "$GIFPID" "$CURSEL" "$FIFO_UEBERZUG" >/dev/null 2>&1 pkill -P "$$" >/dev/null 2>&1 } if [ "$PREVIEW_MODE" ]; then if [ "$TERMINAL" != "kitty" ] && exists ueberzug; then mkfifo "$FIFO_UEBERZUG" - trap 'ueberzug_refresh; rm $FIFO_UEBERZUG' WINCH + trap 'ueberzug_refresh; rm "$FIFO_UEBERZUG"' WINCH tail --follow "$FIFO_UEBERZUG" | ueberzug layer --silent --parser json & fi - trap 'rm "$PAGERPID" "$GIFPID" "$CURSEL" 2>/dev/null' INT HUP EXIT + trap 'rm "$PAGERPID" "$GIFPID" "$CURSEL" "$FIFO_UEBERZUG" 2>/dev/null' INT HUP EXIT - preview_file "$1" + preview_file "$PWD/$1" + printf "%s" "$PWD/$1" > "$CURSEL" & preview_fifo 2>/dev/null & wait else