 (defvar zomp-build-variant "release"
   "Whether to use the Zomp \"debug\" or \"release\" build.")
 
+(defun zomp-select-architecture ()
+  "Select which architecture to use for build commands."
+  (interactive)
+  (setq zomp-build-architecture (completing-read "Select architecture for builds: " zomp-build-architectures)))
+
+(defun zomp-select-variant ()
+  "Select which variant to use for build commands."
+  (interactive)
+  (setq zomp-build-variant (completing-read "Select variant for builds: " zomp-build-variants)))
+
+(defun zomp-toggle-variant ()
+  "Toggle between using Zomp variants. See `zomp-build-variant'."
+  (interactive)
+  (setq zomp-build-variant
+        (if (string= "release" zomp-build-variant)
+            "debug"
+          "release"))
+  (minibuffer-message "Now using Zomp build %s%s" (zomp-build-name)
+                      (if (zomp-get-shell-buffer nil)
+                          ", need to restart zompsh to take effect"
+                        "")))
+
 (defun zomp-build-name ()
   "Returns the variant of Zomp used. This value is composed of the build variant
 and the architecture like this: \"variant-architecture\"."

   (when (equal create-if-not-existing 'create)
     (zomp-start-shell)
     (get-buffer-process zomp-shell-buffer-name))))

(defun zomp-toggle-variant ()
  "Toggle between using Zomp variants. See `zomp-build-variant'."
  (interactive)
  (setq zomp-build-variant
        (if (string= "release" zomp-build-variant)
            "debug"
          "release"))
  (minibuffer-message "Now using Zomp build %s%s" (zomp-build-name)
                      (if (zomp-get-shell-buffer nil)
                        ", need to restart zompsh to take effect"
                        "")))

(defun zomp-shell-move-point-to-end ()
  "Will move the point to the end of the shell buffer for all

  "Number of seconds to highlight an expression after it has been evaluated."
  :group 'zomp
  :type 'float)

(defcustom zomp-build-architectures (list "i386" "x86_64")
  "List of supported architectures."
  :group 'zomp
  :type '(repeat string))

(defcustom zomp-build-variants (list "debug" "release")
  "List of supported build variants."
  :group 'zomp
  :type '(repeat string))

(defface zomp-highlight-after-eval-face
  '((t (:inherit highlight)))
