env_setup: Don't write the spinner to files

Avoid writing backspace character to logs files as this just makes the
log harder to read.

No-Docs-Update-Reason: no API change
Change-Id: I4040e2198a610fe13d655ab37b95c73c92f50c02
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/48400
Reviewed-by: Rob Mohr <mohrr@google.com>
Commit-Queue: Michael Spang <spang@google.com>
diff --git a/pw_env_setup/py/pw_env_setup/spinner.py b/pw_env_setup/py/pw_env_setup/spinner.py
index 63d577ea..ac70093 100644
--- a/pw_env_setup/py/pw_env_setup/spinner.py
+++ b/pw_env_setup/py/pw_env_setup/spinner.py
@@ -22,6 +22,11 @@
 PW_ENVSETUP_DISABLE_SPINNER = os.environ.get('PW_ENVSETUP_DISABLE_SPINNER')
 
 
+def _disabled():
+    return PW_ENVSETUP_DISABLE_SPINNER or (PW_ENVSETUP_DISABLE_SPINNER is None
+                                           and not sys.stdout.isatty())
+
+
 class Spinner(object):  # pylint: disable=useless-object-inheritance
     """Spinner!"""
     def __init__(self):
@@ -42,7 +47,7 @@
             i = (i + 1) % len(chars)
 
     def start(self):
-        if PW_ENVSETUP_DISABLE_SPINNER:
+        if _disabled():
             return
 
         self._done = False
@@ -50,7 +55,7 @@
         self._thread.start()
 
     def stop(self):
-        if PW_ENVSETUP_DISABLE_SPINNER:
+        if _disabled():
             return
 
         assert self._thread