more uniquifying
authorChris Koeritz <fred@gruntose.com>
Thu, 12 Oct 2017 22:02:53 +0000 (18:02 -0400)
committerChris Koeritz <fred@gruntose.com>
Thu, 12 Oct 2017 22:02:53 +0000 (18:02 -0400)
added a function for the unique line code, shortening things a lot.

scripts/core/functions.sh
scripts/rev_control/version_control.sh

index 1fe45e6c4d84cc2e8ea3ae242fcbf4ab5359d0d4..6c6832ae70e2d10f4fd7c2d30d346ac48304cc18 100644 (file)
@@ -80,6 +80,18 @@ if [ -z "$skip_all" ]; then
     IFS="$HOLDIFS"
   }
 
+  # when passed a list of things, this will return the unique items from that list as an echo.
+  function uniquify()
+  {
+    # change the eol character so things are easier.
+    HOLDIFS="$IFS"
+    IFS=' '
+    # do the uniquification.
+    echo $* | uniq
+    # return the former eol characters to their place.
+    IFS="$HOLDIFS"
+  }
+
   # sets the variable in parameter 1 to the value in parameter 2, but only if
   # that variable was undefined.
   function set_var_if_undefined()
index 2506a60847f87589bf42f8d83aeedb78b650f2b8..c27f6895fae602ffa223b99b07044d672130b7e1 100644 (file)
@@ -204,18 +204,13 @@ function do_report_new
 # checks in all the folders in a specified list.
 function checkin_list()
 {
-echo list originally was: $*
-
   # make the list of directories unique.
-  HOLDIFS="$IFS"
-  IFS=' '
-  local list="$(echo $* | uniq)"
-  IFS="$HOLDIFS"
+echo list originally was: $*
+  local list="$(uniquify $*)"
 echo list became $list
 
 #hmmm: if above works, then it's needed in other places that
 #  are passed lists.
-#hmmm: in fact, shouldn't it be a handy function of some sort for uniquifying lists?
 
   save_terminal_title