Add exit code and log msg based on number of found records
authorSiraaj Khandkar <siraaj@khandkar.net>
Sat, 18 Jun 2022 20:22:51 +0000 (16:22 -0400)
committerSiraaj Khandkar <siraaj@khandkar.net>
Sat, 18 Jun 2022 20:22:51 +0000 (16:22 -0400)
home/lib/login_functions.sh

index 6741dfd..6133181 100644 (file)
@@ -7,6 +7,7 @@ p() {
         '
             BEGIN {_s = tolower(_s)}
 
+            # TODO fzf/dmenu select instead of searching:
             /^[a-zA-Z]/ && tolower($1) ~ _s && NF >= 2 {
                 n++
                 s = $1
@@ -32,6 +33,19 @@ p() {
 
                 printf "%s", p # XXX Intentionally avoiding newline in the result.
             }
+
+            END {
+                if (n == 1) {
+                    exit 0
+                } else if (n == 0) {
+                    printf "[ERROR] Found nothing.\n" > "/dev/stderr"
+                    exit 1
+                } else if (n > 1) {
+                    # TODO fzf-select which of the records the user (ahem, me) wants.
+                    printf "[WARNING] Found more than one record.\n" > "/dev/stderr"
+                    exit 0
+                }
+            }
         ' \
         ~/._p/p \
         | xsel -i -b -t 30000
This page took 0.023383 seconds and 4 git commands to generate.