Merge branch 'master' of github.com:dylanaraps/wal.py

This commit is contained in:
Dylan Araps 2017-08-03 06:10:36 +10:00
commit 8a0b380eb5
3 changed files with 19 additions and 28 deletions

View File

@ -61,18 +61,20 @@ def sort_colors(img, colors):
if raw_colors[0][1] not in ["0", "1", "2"]: if raw_colors[0][1] not in ["0", "1", "2"]:
raw_colors[0] = util.darken_color(raw_colors[0], 0.25) raw_colors[0] = util.darken_color(raw_colors[0], 0.25)
colors = {"wallpaper": img} # Create a comment color from the background.
raw_colors[8] = util.lighten_color(raw_colors[0], 0.40)
colors = {"wallpaper": img}
colors_special = {} colors_special = {}
colors_hex = {}
colors_special.update({"background": raw_colors[0]}) colors_special.update({"background": raw_colors[0]})
colors_special.update({"foreground": raw_colors[15]}) colors_special.update({"foreground": raw_colors[15]})
colors_special.update({"cursor": raw_colors[15]}) colors_special.update({"cursor": raw_colors[15]})
colors_hex = {}
for index, color in enumerate(raw_colors): for index, color in enumerate(raw_colors):
colors_hex.update({f"color{index}": color}) colors_hex.update({f"color{index}": color})
colors_hex["color8"] = util.set_grey(raw_colors)
colors["special"] = colors_special colors["special"] = colors_special
colors["colors"] = colors_hex colors["colors"] = colors_hex

View File

@ -34,23 +34,6 @@ class Color:
return f"[{self.alpha_num}]{self.hex_color}" return f"[{self.alpha_num}]{self.hex_color}"
def set_grey(colors):
"""Set a grey color based on the brightness
of another color."""
return {
"0": "#666666",
"1": "#666666",
"2": "#757575",
"3": "#999999",
"4": "#999999",
"5": "#8a8a8a",
"6": "#a1a1a1",
"7": "#a1a1a1",
"8": "#a1a1a1",
"9": "#a1a1a1",
}.get(colors[0][1], colors[7])
def read_file(input_file): def read_file(input_file):
"""Read data from a file and trim newlines.""" """Read data from a file and trim newlines."""
with open(input_file, "r") as file: with open(input_file, "r") as file:
@ -114,9 +97,16 @@ def rgb_to_hex(color):
return f"#{color[0]:02x}{color[1]:02x}{color[2]:02x}" return f"#{color[0]:02x}{color[1]:02x}{color[2]:02x}"
def darken_color(color, darkness): def darken_color(color, amount):
"""Darken a hex color.""" """Darken a hex color."""
return rgb_to_hex([int(col * (1 - darkness)) for col in hex_to_rgb(color)]) color = [int(col * (1 - amount)) for col in hex_to_rgb(color)]
return rgb_to_hex(color)
def lighten_color(color, amount):
"""Lighten a hex color."""
color = [int(col + (255 - col) * amount) for col in hex_to_rgb(color)]
return rgb_to_hex(color)
def disown(cmd): def disown(cmd):

View File

@ -13,12 +13,6 @@ COLORS = util.read_file_json("tests/test_files/test_file.json")
class TestUtil(unittest.TestCase): class TestUtil(unittest.TestCase):
"""Test the util functions.""" """Test the util functions."""
def test_set_grey(self):
"""> Get grey color based on brightness of color0"""
colors = [list(COLORS["colors"].values())]
result = util.set_grey(colors[0])
self.assertEqual(result, "#666666")
def test_read_file(self): def test_read_file(self):
"""> Read colors from a file.""" """> Read colors from a file."""
result = util.read_file("tests/test_files/test_file") result = util.read_file("tests/test_files/test_file")
@ -91,6 +85,11 @@ class TestUtil(unittest.TestCase):
result = util.darken_color("#ffffff", 0.25) result = util.darken_color("#ffffff", 0.25)
self.assertEqual(result, "#bfbfbf") self.assertEqual(result, "#bfbfbf")
def test_lighten_color(self):
"""> Lighten #000000 by 0.25."""
result = util.lighten_color("#000000", 0.25)
self.assertEqual(result, "#3f3f3f")
if __name__ == "__main__": if __name__ == "__main__":
unittest.main() unittest.main()