mirror of
https://github.com/dylanaraps/pywal.git
synced 2025-06-20 01:27:42 +02:00
General: Add all export functions
This commit is contained in:
parent
b7fff265d0
commit
137d986742
62
wal
62
wal
@ -335,11 +335,31 @@ def set_wallpaper(img):
|
|||||||
# EXPORT COLORS {{{
|
# EXPORT COLORS {{{
|
||||||
|
|
||||||
|
|
||||||
|
def export_generic(colors, col_format):
|
||||||
|
"""Export colors to var format."""
|
||||||
|
# Loop over the colors and format them.
|
||||||
|
colors = [col_format % (num, color) for num, color in enumerate(colors)]
|
||||||
|
colors = ''.join(colors)
|
||||||
|
|
||||||
|
return colors
|
||||||
|
|
||||||
|
|
||||||
def export_plain(colors):
|
def export_plain(colors):
|
||||||
"""Export colors to a plain text file."""
|
"""Export colors to a plain text file."""
|
||||||
with open(CACHE_DIR / "colors", 'w') as file:
|
with open(CACHE_DIR / "colors", 'w') as file:
|
||||||
file.write('\n'.join(colors))
|
file.write('\n'.join(colors))
|
||||||
|
|
||||||
|
print("export: Exported plain colors")
|
||||||
|
|
||||||
|
|
||||||
|
def export_shell(colors, export_file):
|
||||||
|
"""Export colors to shell format."""
|
||||||
|
col_format = "color%s='%s'\n"
|
||||||
|
colors = export_generic(colors, col_format)
|
||||||
|
save_file(colors, export_file)
|
||||||
|
|
||||||
|
print("export: Exported shell colors.")
|
||||||
|
|
||||||
|
|
||||||
def export_rofi(colors):
|
def export_rofi(colors):
|
||||||
"""Append rofi colors to the x_colors list."""
|
"""Append rofi colors to the x_colors list."""
|
||||||
@ -362,28 +382,48 @@ def export_emacs(colors):
|
|||||||
ColorFormats.x_colors.append("emacs*foreground: %s\n" % (colors[15]))
|
ColorFormats.x_colors.append("emacs*foreground: %s\n" % (colors[15]))
|
||||||
|
|
||||||
|
|
||||||
def export_xrdb(colors):
|
def export_xrdb(colors, export_file):
|
||||||
"""Export colors to xrdb."""
|
"""Export colors to xrdb."""
|
||||||
x_colors = ''.join(colors)
|
colors = ''.join(colors)
|
||||||
|
save_file(colors, export_file)
|
||||||
# Write the colors to the file.
|
|
||||||
with open(CACHE_DIR / "xcolors", 'w') as file:
|
|
||||||
file.write(x_colors)
|
|
||||||
|
|
||||||
# Merge the colors into the X db so new terminals use them.
|
# Merge the colors into the X db so new terminals use them.
|
||||||
subprocess.Popen(["xrdb", "-merge", CACHE_DIR / "xcolors"])
|
subprocess.Popen(["xrdb", "-merge", export_file])
|
||||||
|
|
||||||
print("export: Exported xrdb colors.")
|
print("export: Exported xrdb colors.")
|
||||||
|
|
||||||
|
|
||||||
|
def export_css(colors, export_file):
|
||||||
|
"""Export colors as css variables."""
|
||||||
|
col_format = "\t--color%s: %s;\n"
|
||||||
|
colors = ":root {\n%s}\n" % str(export_generic(colors, col_format))
|
||||||
|
save_file(colors, export_file)
|
||||||
|
|
||||||
|
print("export: Exported css colors.")
|
||||||
|
|
||||||
|
|
||||||
|
def export_scss(colors, export_file):
|
||||||
|
"""Export colors as scss variables."""
|
||||||
|
col_format = "$color%s: %s;\n"
|
||||||
|
colors = export_generic(colors, col_format)
|
||||||
|
save_file(colors, export_file)
|
||||||
|
|
||||||
|
print("export: Exported scss colors.")
|
||||||
|
|
||||||
|
|
||||||
def export_colors(colors):
|
def export_colors(colors):
|
||||||
"""Export colors in various formats."""
|
"""Export colors in various formats."""
|
||||||
export_plain(colors)
|
export_plain(colors)
|
||||||
|
export_shell(colors, CACHE_DIR / "colors.sh")
|
||||||
|
|
||||||
# X based colors.
|
# X based colors.
|
||||||
export_rofi(colors)
|
export_rofi(colors)
|
||||||
export_emacs(colors)
|
export_emacs(colors)
|
||||||
export_xrdb(ColorFormats.x_colors)
|
export_xrdb(ColorFormats.x_colors, CACHE_DIR / "xcolors")
|
||||||
|
|
||||||
|
# Web based colors.
|
||||||
|
export_css(colors, CACHE_DIR / "colors.css")
|
||||||
|
export_scss(colors, CACHE_DIR / "colors.scss")
|
||||||
|
|
||||||
|
|
||||||
# }}}
|
# }}}
|
||||||
@ -419,6 +459,12 @@ def reload_colors(vte):
|
|||||||
quit()
|
quit()
|
||||||
|
|
||||||
|
|
||||||
|
def save_file(colors, export_file):
|
||||||
|
"""Write the colors to the file."""
|
||||||
|
with open(export_file, 'w') as file:
|
||||||
|
file.write(colors)
|
||||||
|
|
||||||
|
|
||||||
# }}}
|
# }}}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user