aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pywal/__main__.py3
-rw-r--r--pywal/colors.py30
2 files changed, 23 insertions, 10 deletions
diff --git a/pywal/__main__.py b/pywal/__main__.py
index c1c4002..90e8978 100644
--- a/pywal/__main__.py
+++ b/pywal/__main__.py
@@ -40,7 +40,8 @@ def get_args(args):
arg.add_argument("--backend", metavar="backend",
help="Which color backend to use. \
Use 'wal --backend' to list backends.",
- const="list_backends", type=str, nargs="?", default="wal")
+ const="list_backends", type=str,
+ nargs="?", default="default")
arg.add_argument("--theme", metavar="/path/to/file or theme_name",
help="Which colorscheme file to use. \
diff --git a/pywal/colors.py b/pywal/colors.py
index 5472ef5..956cd35 100644
--- a/pywal/colors.py
+++ b/pywal/colors.py
@@ -8,7 +8,7 @@ import sys
from . import theme
from . import util
-from .settings import CACHE_DIR, MODULE_DIR, __cache_version__
+from .settings import CACHE_DIR, MODULE_DIR, CONFIG, __cache_version__
def list_backends():
@@ -81,8 +81,27 @@ def cache_fname(img, backend, light, cache_dir):
return [cache_dir, "schemes", "%s_%s_%s_%s.json" % (*file_parts,)]
-def get(img, light=False, backend="wal", cache_dir=CACHE_DIR):
+def get_backend(backend):
+ """Figure out which backend to use."""
+ if CONFIG.get("colors", "backend") and backend == "default":
+ return CONFIG.get("colors", "backend")
+
+ elif backend == "default":
+ return "wal"
+
+ if backend == "random":
+ backends = list_backends()
+ random.shuffle(backends)
+ return backends[0]
+
+ return backend
+
+
+def get(img, light=False, backend="default", cache_dir=CACHE_DIR):
"""Generate a palette."""
+ backend = get_backend(backend)
+ print("wal: Using", backend, "backend.")
+
# home_dylan_img_jpg_backend_1.2.2.json
cache_name = cache_fname(img, backend, light, cache_dir)
cache_file = os.path.join(*cache_name)
@@ -95,13 +114,6 @@ def get(img, light=False, backend="wal", cache_dir=CACHE_DIR):
else:
print("wal: Generating a colorscheme...")
- if backend == "random":
- backends = list_backends()
- random.shuffle(backends)
- backend = backends[0]
-
- print("wal: Using", backend, "backend.")
-
# Dynamically import the backend we want to use.
# This keeps the dependencies "optional".
try: