def get(img, light=False, backend="wal", cache_dir=CACHE_DIR, sat=""):
    """Generate a palette."""
    # home_dylan_img_jpg_backend_1.2.2.json
    cache_name = cache_fname(img, backend, light, cache_dir, sat)
    cache_file = os.path.join(*cache_name)

    if os.path.isfile(cache_file):
        colors = theme.file(cache_file)
        colors["alpha"] = util.Color.alpha_num
        logging.info("Found cached colorscheme.")

    else:
        logging.info("Generating a colorscheme.")
        backend = get_backend(backend)

        # Dynamically import the backend we want to use.
        # This keeps the dependencies "optional".
        try:
            __import__("pywal.backends.%s" % backend)
        except ImportError:
            __import__("pywal.backends.wal")
            backend = "wal"

        logging.info("Using %s backend.", backend)
        backend = sys.modules["pywal.backends.%s" % backend]
        colors = getattr(backend, "get")(img, light)
        colors = colors_to_dict(saturate_colors(colors, sat), img)

        util.save_file_json(colors, cache_file)
        logging.info("Generation complete.")

    return colors
def get ( img , light = False , backend = "wal" , cache_dir = CACHE_DIR , sat = "" ) : cache_name = cache_fname ( img , backend , light , cache_dir , sat ) cache_file = os . path . join ( * cache_name ) if os . path . isfile ( cache_file ) : colors = theme . file ( cache_file ) colors [ "alpha" ] = util . Color . alpha_num logging . info ( "Found cached colorscheme." ) else : logging . info ( "Generating a colorscheme." ) backend = get_backend ( backend ) try : __import__ ( "pywal.backends.%s" % backend ) except ImportError : __import__ ( "pywal.backends.wal" ) backend = "wal" logging . info ( "Using %s backend." , backend ) backend = sys . modules [ "pywal.backends.%s" % backend ] colors = getattr ( backend , "get" ) ( img , light ) colors = colors_to_dict ( saturate_colors ( colors , sat ) , img ) util . save_file_json ( colors , cache_file ) logging . info ( "Generation complete." ) return colors
Generate a palette.