diff options
| author | Dylan Araps <dylan.araps@gmail.com> | 2017-12-27 21:07:26 +1100 |
|---|---|---|
| committer | Dylan Araps <dylan.araps@gmail.com> | 2017-12-27 21:07:26 +1100 |
| commit | 695ae1ffb22f64f4b26a282a49b08a9ce635c9e6 (patch) | |
| tree | 8d5841471be7a7ec6ba9bc78784bb5d06420f591 | |
| parent | 0e59e34d8ed15480bd61595be1e98b387770676e (diff) | |
| parent | e68495b0a5f29176e14b0ccb03792a88cc88a296 (diff) | |
Merge branch 'master' of github.com:dylanaraps/pywal
| -rw-r--r-- | pywal/__main__.py | 18 | ||||
| -rw-r--r-- | pywal/reload.py | 15 | ||||
| -rw-r--r-- | pywal/sequences.py | 21 |
3 files changed, 23 insertions, 31 deletions
diff --git a/pywal/__main__.py b/pywal/__main__.py index e7f2aef..ed6e069 100644 --- a/pywal/__main__.py +++ b/pywal/__main__.py @@ -56,14 +56,14 @@ def get_args(args): don't display notifications.") arg.add_argument("-r", action="store_true", - help="Reload current colorscheme.") + help="Deprecated: Use \ + (cat ~/.cache/wal/sequences &) instead.") arg.add_argument("-R", action="store_true", help="Restore previous colorscheme.") - arg.add_argument("-t", action="store_true", - help="Fix artifacts in VTE Terminals. \ - (Termite, xfce4-terminal)") + arg.add_argument("-t", action="store_false", + help="Deprecated: Does nothing and is no longer needed.") arg.add_argument("-v", action="store_true", help="Print \"wal\" version.") @@ -90,6 +90,10 @@ def process_args(args): print("wal", __version__) sys.exit(0) + if args.r: + print("Deprecated: Use (cat ~/.cache/wal/sequences &) instead.") + sys.exit(1) + if args.q: sys.stdout = sys.stderr = open(os.devnull, "w") @@ -97,10 +101,6 @@ def process_args(args): scheme_dir = os.path.join(CACHE_DIR, "schemes") shutil.rmtree(scheme_dir, ignore_errors=True) - if args.r: - reload.colors(args.t) - sys.exit(0) - if args.a: util.Color.alpha_num = args.a @@ -125,7 +125,7 @@ def process_args(args): colors_plain["colors"]["color0"] = args.b if args.i or args.f: - sequences.send(colors_plain, args.t) + sequences.send(colors_plain) if not args.n: wallpaper.change(colors_plain["wallpaper"]) diff --git a/pywal/reload.py b/pywal/reload.py index 7937e8f..f66cc96 100644 --- a/pywal/reload.py +++ b/pywal/reload.py @@ -2,7 +2,6 @@ Reload programs. """ import os -import re import shutil import subprocess @@ -65,17 +64,3 @@ def env(xrdb_file=None): sway() polybar() print("reload: Reloaded environment.") - - -def colors(vte, cache_dir=CACHE_DIR): - """Reload the current scheme.""" - sequence_file = os.path.join(cache_dir, "sequences") - - if os.path.isfile(sequence_file): - sequences = "".join(util.read_file(sequence_file)) - - # If vte mode was used, remove the unsupported sequence. - if vte: - sequences = re.sub(r"\]708;(\[.{0,3}\])?\#.{6}", "", sequences) - - print(sequences, end="") diff --git a/pywal/sequences.py b/pywal/sequences.py index 7b6f4ae..e82ee6e 100644 --- a/pywal/sequences.py +++ b/pywal/sequences.py @@ -39,16 +39,12 @@ def set_iterm_tab_color(color): """ % (red, green, blue) -def create_sequences(colors, vte): +def create_sequences(colors): """Create the escape sequences.""" # Colors 0-15. sequences = [set_color(index, colors["colors"]["color%s" % index]) for index in range(16)] - # This escape sequence doesn"t work in VTE terminals. - if not vte: - sequences.append(set_special(708, colors["special"]["background"])) - # Special colors. # Source: https://goo.gl/KcoQgP # 10 = foreground, 11 = background, 12 = cursor foregound @@ -61,12 +57,23 @@ def create_sequences(colors, vte): if OS == "Darwin": sequences += set_iterm_tab_color(colors["special"]["background"]) + # This escape sequence doesn't work in VTE terminals and their parsing of + # unknown sequences is garbage so we need to use some escape sequence + # M A G I C to hide the output. + # \0337 # Save cursor position. + # \033[1000H # Move the cursor off screen. + # \033[8m # Conceal text. + # \033]708;#000000\007 # Garbage sequence. + # \0338 # Restore cursor position. + sequences.append("\0337\033[1000H\033[8m\033]708;%s\007\0338" % + colors['special']['background']) + return "".join(sequences) -def send(colors, vte, cache_dir=CACHE_DIR): +def send(colors, cache_dir=CACHE_DIR): """Send colors to all open terminals.""" - sequences = create_sequences(colors, vte) + sequences = create_sequences(colors) if OS == "Darwin": tty_pattern = "/dev/ttys00[0-9]*" |
