diff options
-rwxr-xr-x | remembering | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/remembering b/remembering index c789757..bb3dcd2 100755 --- a/remembering +++ b/remembering @@ -84,21 +84,26 @@ end() { } get_left() { - if ! IFS='' read -r LEFT <&3; then + LEFT="$(echo "$LEFT_L" | head -n1)" + LEFT_L="$(echo "$LEFT_L" | tail -n+2)" + if [ -z "$LEFT" ]; then end fi } get_right() { - if ! IFS='' read -r RIGHT_RANKED <&4; then - while IFS='' read -r LEFT; do - append "0:$LEFT" - done <&3 + RIGHT_RANKED="$(echo "$RIGHT_RANKED_L" | head -n1)" + RIGHT_RANKED_L="$(echo "$RIGHT_RANKED_L" | tail -n+2)" + if [ -z "$RIGHT_RANKED" ]; then + MERGED="$MERGED${MERGED:+ +}$(echo "$LEFT_L" | awk '{print "0:" $0}')" end fi } ( + LEFT_L="$(cat "$SORTED_STDIN")" + RIGHT_RANKED_L="$(cat "$PROFILE")" get_right get_left while true; do @@ -119,7 +124,7 @@ get_right() { continue fi done -) 3<"$SORTED_STDIN" 4<"$PROFILE" +) CHOICE="$(sort -t: -k1nr,1 -k2,2 < "$MERGEDF" | \ cut -d: -f2- | \ |