diff options
-rwxr-xr-x | bin/ovr | 29 |
1 files changed, 17 insertions, 12 deletions
@@ -10,6 +10,22 @@ err() } +ovr_alt() +{ + permanent=; + + enter() { tput smcup; } >/dev/tty; + leave() { tput rmcup; } >/dev/tty; + + trap leave QUIT TERM; + + enter; + permanent="$(tee /dev/tty | tail -n "$n"; echo x)"; + leave; + printf '%s' "${permanent%x}"; +} + + n=1 while test $# -ge 1; do case "$1" in @@ -30,15 +46,4 @@ while test $# -ge 1; do shift; done; - -permanent=; - -enter() { tput smcup; } >/dev/tty; -leave() { tput rmcup; } >/dev/tty; - -trap leave QUIT TERM; - -enter; -permanent="$(tee /dev/tty | tail -n "$n"; echo x)"; -leave; -printf '%s' "${permanent%x}"; +ovr_alt; |