   singleton then only print one in the common usage format."
   [errors]
   (if (= (count errors) 1)
-    (format "%s: %s" (program-name) (first errors))
+    (str (program-fmt) (first errors))
     (str "The following errors occurred while parsing your action:\n\n"
          (s/join \newline errors))))
 

    (if *log-error* (log/error e "action line parse error"))
    (if (instance? java.io.FileNotFoundException e)
      (binding [*out* *err*]
        (println (format "%s: io error: %s" (program-name) msg)))
      (binding [*out* *err*]
        (println (format "%s: error: %s"
                         (program-name)
                         (if ex-data
                           (.getMessage e)
                           (.toString e)))))))

  ([usage-format]
   (fn [action-names]
     (->> (format usage-format
                  (or (program-name) "")
                  (if-not action-names
                    ""
                    (->> action-names
