studiow offering extra short arguments for various project subsets

Bug: 173045787

Test: ./studiow # and see that it prints usage
Test: ./studiow --misspelled # and see that it prints usage
Test: ./studiow c c # and see that it prints usage

Test: ./studiow c # and see that it opens only compose projects

Change-Id: Iea639498852db4f62452674ea656741377476e20
diff --git a/studiow b/studiow
index 577071b..2dc12360 100755
--- a/studiow
+++ b/studiow
@@ -1,16 +1,48 @@
 #!/usr/bin/env bash
-if [ -n "$1" ]; then
-  export ANDROIDX_PROJECTS=${1^^}
-else
-  export ANDROIDX_PROJECTS=MAIN
-  echo "Supported projects sets include:"
-  echo "- MAIN for non-Compose Jetpack libraries"
-  echo "- COMPOSE for Compose and dependencies"
-  echo "- FLAN for Fragment, Lifecycle, Activity, and Navigation"
-  echo "- ALL for all libraries"
-  echo
-  echo "No project set specified, using MAIN..."
-fi
-shift
-source gradlew studio "$@"
 
+function usage() {
+  echo "Usage: studiow [<project subset>]"
+  echo
+  echo "Project subsets:"
+  echo " m, main"
+  echo "  Open the project subset MAIN: non-Compose Jetpack libraries"
+  echo
+  echo " c, compose"
+  echo "  Open the project subset COMPOSE"
+  echo
+  echo " f, flan"
+  echo "  Open the project subset FLAN: Fragment, Lifecycle, Activity, and Navigation"
+  echo
+  echo " a, all"
+  echo "  Open the project subset ALL"
+  echo
+  exit 1
+}
+
+subsetArg="$1"
+if [ "$subsetArg" == "" ]; then
+  usage
+fi
+if [ "$subsetArg" == "m" -o "$subsetArg" == "main" ]; then
+  export ANDROIDX_PROJECTS=MAIN
+fi
+if [ "$subsetArg" == "c" -o "$subsetArg" == "compose" ]; then
+  export ANDROIDX_PROJECTS=COMPOSE
+fi
+if [ "$subsetArg" == "f" -o "$subsetArg" == "flan" ]; then
+  export ANDROIDX_PROJECTS=FLAN
+fi
+if [ "$subsetArg" == "a" -o "$subsetArg" == "all" ]; then
+  export ANDROIDX_PROJECTS=ALL
+fi
+if [ "$ANDROIDX_PROJECTS" == "" ]; then
+  echo "Unrecognized project argument: '$subsetArg'"
+  usage
+fi
+
+shift
+if [ "$1" != "" ]; then
+  echo "Unrecognized argument: '$1'"
+  usage
+fi
+source gradlew studio