aboutsummaryrefslogtreecommitdiff
path: root/scripts/apply-tilix-colorscheme.py
diff options
context:
space:
mode:
authorChristian Duerr <contact@christianduerr.com>2020-01-27 00:30:23 +0100
committerKirill Chibisov <contact@kchibisov.com>2020-01-27 02:30:23 +0300
commit0f15dc05d9332bb9dc71bd9b70bc737da2dc33c5 (patch)
tree481e2fd0559aad8f588d0a9ac075ccfc47d4efb9 /scripts/apply-tilix-colorscheme.py
parent4cc6421daa4ff5976ab43c67110a7a80a36541e5 (diff)
downloadr-alacritty-0f15dc05d9332bb9dc71bd9b70bc737da2dc33c5.tar.gz
r-alacritty-0f15dc05d9332bb9dc71bd9b70bc737da2dc33c5.tar.bz2
r-alacritty-0f15dc05d9332bb9dc71bd9b70bc737da2dc33c5.zip
Switch to flamegraph-rs script
This cleans up the Alacritty scripts a bit by removing some of them which are not recommended to be used anymore and switching from the official FlameGraph tool to the more specialized Rust FlameGraph implementation.
Diffstat (limited to 'scripts/apply-tilix-colorscheme.py')
-rwxr-xr-xscripts/apply-tilix-colorscheme.py112
1 files changed, 0 insertions, 112 deletions
diff --git a/scripts/apply-tilix-colorscheme.py b/scripts/apply-tilix-colorscheme.py
deleted file mode 100755
index 1474ab3a..00000000
--- a/scripts/apply-tilix-colorscheme.py
+++ /dev/null
@@ -1,112 +0,0 @@
-#!/usr/bin/env python3
-
-import collections
-import logging
-import shutil
-import json
-import sys
-import os
-
-import yaml
-
-log = logging.getLogger(__name__)
-
-XDG_CONFIG_HOME = os.environ.get('XDG_CONFIG_HOME', os.path.expanduser('~/.config'))
-ALACONF_FN = os.path.join(XDG_CONFIG_HOME, 'alacritty', 'alacritty.yml')
-
-Palette = collections.namedtuple('Pallete', ['black', 'red', 'green', 'yellow', 'blue', 'magenta', 'cyan', 'white'])
-
-
-class AttrDict(dict):
- """
- >>> m = AttrDict(omg=True, whoa='yes')
- """
-
- def __init__(self, *args, **kwargs):
- super(AttrDict, self).__init__(*args, **kwargs)
- self.__dict__ = self
-
-
-def slurp_yaml(fn):
- with open(fn, 'r') as fh:
- # JSON is a subset of YAML.
- contents = yaml.load(fh)
- return contents
-
-
-def fixup_hex_color(*args):
- for arg in args:
- val = '0x%s' % arg.strip('#')
- yield val
-
-
-def convert(tilix_scheme):
- j = AttrDict(tilix_scheme)
- palette = list(fixup_hex_color(*j.palette))
-
- pal_normal = Palette(*palette[:8])
- pal_bold = Palette(*palette[8:])
-
- colors = {
- 'primary': dict(zip(
- ['background', 'foreground'],
- fixup_hex_color(j['background-color'], j['foreground-color']),
- )),
- 'cursor': dict(zip(
- ['text', 'cursor'],
- fixup_hex_color(j['cursor-background-color'], j['cursor-foreground-color']),
- )),
- 'normal': dict(pal_normal._asdict()),
- 'bright': dict(pal_bold._asdict()),
- }
-
- return colors
-
-
-def patch_alaconf_colors(colors, alaconf_fn=ALACONF_FN):
- with open(alaconf_fn, 'r') as fh:
- ac_raw = fh.read()
-
- # Write config file taking care to not remove delicious comments.
- # Sure, it's janky, but less so than losing comments.
- skipping = False
- lines = []
- for line in ac_raw.splitlines():
- if skipping:
- if line and line[0].isalpha():
- skipping = False
-
- elif line.startswith('colors:'):
- skipping = True
-
- if not skipping:
- if not line and lines and not lines[-1]:
- continue
- lines.append(line)
-
- temp_fn = '%s.tmp' % alaconf_fn
- backup_fn = '%s.bak' % alaconf_fn
-
- with open(temp_fn, 'w') as fh:
- fh.write('\n'.join(lines))
- fh.write('\n')
- yaml.safe_dump(dict(colors=colors), fh)
-
- shutil.copyfile(alaconf_fn, backup_fn)
- os.rename(temp_fn, alaconf_fn)
-
-
-def main(argv=sys.argv):
- if len(argv) != 2:
- print("Usage: %s TILIX_SCHEME_JSON_FILE" % sys.executable, file=sys.stderr)
- sys.exit(1)
-
- fn = argv[1]
-
- tilix_scheme = slurp_yaml(fn)
- colors = convert(tilix_scheme)
- patch_alaconf_colors(colors)
-
-
-if __name__ == '__main__':
- main()