From 8311d6a29668c7efd04a3a71f41aa28c3bd56e79 Mon Sep 17 00:00:00 2001 From: Andrew Cady Date: Wed, 31 Jul 2024 19:43:07 -0400 Subject: factor $TWOPANE into function names --- twopane.bash | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) (limited to 'twopane.bash') diff --git a/twopane.bash b/twopane.bash index 776ec5d..a00e727 100755 --- a/twopane.bash +++ b/twopane.bash @@ -14,7 +14,17 @@ TWOPANE=$(mktemp -d) export TWOPANE TOP_CMD BOT_CMD TOP_TITLE BOT_TITLE BOT_SIZE trap 'rm -r "$TWOPANE"' EXIT STY=twopane.${TWOPANE##*/} -cat > "$TWOPANE"/screenrc <<'.' +save_file() +{ + out=$TWOPANE/${1:?$0: filename cannot be empty string} + cat > "$out" +} +save_screenrc() +{ + save_file screenrc"${1:+.$1}" +} + +save_screenrc <<'.' unbindall escape \0\0 caption string '%t' @@ -27,7 +37,7 @@ screen -ln -t "$BOT_TITLE" 0 bash "$TWOPANE"/bashrc source "$TWOPANE"/screenrc.startpane . -cat > "$TWOPANE"/screenrc.startpane <<'.' +save_screenrc 'startpane' <<'.' focus top screen -ln -t "$TOP_TITLE" 1 sh -c "$TOP_CMD; screen -X focus top; screen -X remove" exec :!:| socat -u UNIX-RECV:"$TWOPANE"/socket STDOUT @@ -36,7 +46,7 @@ focus bottom layout save 0 . -cat > "$TWOPANE"/screenrc.restart <<'.' +save_screenrc 'restart' <<'.' layout new split focus bottom @@ -47,7 +57,7 @@ title 'input' source "$TWOPANE"/screenrc.startpane . -cat > "$TWOPANE"/bashrc <<'.' +save_file bashrc <<'.' trap "screen -X quit" EXIT restart() { -- cgit v1.2.3