Fixed Issue #100

Pywal was using sequences that iterm2 recommends against.  See https://iterm2.com/documentation-escape-codes.html
This commit is contained in:
Matthew Leonberger 2017-09-26 20:41:56 +09:00
parent 37e5077905
commit c03b337d08
2 changed files with 10 additions and 15 deletions

View File

@ -8,12 +8,12 @@ from .settings import CACHE_DIR, OS
from . import util
def set_special(index, color, iterm_name="h"):
def set_special(index, color, iterm_name="bg"):
"""Convert a hex color to a special sequence."""
alpha = util.Color.alpha_num
if OS == "Darwin":
return "\033]P%s%s\033\\" % (iterm_name, color.strip("#"))
return "\033]1337;SetColors=%s=%s\a" % (iterm_name, color.strip("#"))
if index in [11, 708] and alpha != 100:
return "\033]%s;[%s]%s\007" % (index, alpha, color)
@ -31,12 +31,7 @@ def set_color(index, color):
def set_iterm_tab_color(color):
"""Set iTerm2 tab/window color"""
red, green, blue = util.hex_to_rgb(color)
return """
\033]6;1;bg;red;brightness;%s\a
\033]6;1;bg;green;brightness;%s\a
\033]6;1;bg;blue;brightness;%s\a
""" % (red, green, blue)
return "\033]1337;SetColors=tab=%s\a" % color.strip("#")
def create_sequences(colors, vte):
@ -53,10 +48,10 @@ def create_sequences(colors, vte):
# Source: https://goo.gl/KcoQgP
# 10 = foreground, 11 = background, 12 = cursor foregound
# 13 = mouse foreground
sequences.append(set_special(10, colors["special"]["foreground"], "g"))
sequences.append(set_special(11, colors["special"]["background"], "h"))
sequences.append(set_special(12, colors["special"]["cursor"], "l"))
sequences.append(set_special(13, colors["special"]["cursor"], "l"))
sequences.append(set_special(10, colors["special"]["foreground"], "fg"))
sequences.append(set_special(11, colors["special"]["background"], "bg"))
sequences.append(set_special(12, colors["special"]["cursor"], "curbg"))
sequences.append(set_special(13, colors["special"]["cursor"], "curbg"))
if OS == "Darwin":
sequences += set_iterm_tab_color(colors["special"]["background"])

View File

@ -18,7 +18,7 @@ class Testsequences(unittest.TestCase):
result = sequences.set_special(11, COLORS["special"]["background"])
if platform.uname()[0] == "Darwin":
self.assertEqual(result, "\033]Ph1F211E\033\\")
self.assertEqual(result, "\033]1337;SetColors=bg=1F211E\a")
else:
self.assertEqual(result, "\033]11;#1F211E\007")
@ -28,7 +28,7 @@ class Testsequences(unittest.TestCase):
result = sequences.set_special(11, COLORS["special"]["background"])
if platform.uname()[0] == "Darwin":
self.assertEqual(result, "\033]Ph1F211E\033\\")
self.assertEqual(result, "\033]1337;SetColors=bg=1F211E\a")
else:
self.assertEqual(result, "\033]11;[99]#1F211E\007")
@ -44,7 +44,7 @@ class Testsequences(unittest.TestCase):
def test_set_iterm_tab_color(self):
"""> Create iterm tab color sequences"""
result = sequences.set_iterm_tab_color(COLORS["special"]["background"])
self.assertEqual(len(result), 104)
self.assertEqual(result, "\033]1337;SetColors=tab=1F211E\a")
if __name__ == "__main__":