有一个关于如何做到这一点的解释部分在 alacritty 的 git-hub wiki 中,但我没有明白。我尝试过它,例如 Solarized 的浅色和深色版本,但失败了。
请告诉我如何才能拥有多种配色方案手头以及如何拨动开关其中,优选通过击键。
[我不确定这是这个问题的正确位置,所以请告诉我:)]
编辑:我修复了多个计划,根据维基百科。我的错误是我忘记将关键字更改color
为我随后引用的名称。就像是:
# XTerm's color-schemes
schemes:
xterm_light: &light
# Default colors
primary:
background: '#ffffff'
foreground: '#000000'
# Normal colors
normal:
black: '#000000'
red: '#cd0000'
green: '#00cd00'
yellow: '#cdcd00'
blue: '#0000ee'
magenta: '#cd00cd'
cyan: '#00adad'
white: '#c5c5c5'
# Bright colors
bright:
black: '#7f7f7f'
red: '#ff0000'
green: '#00ff00'
yellow: '#ffff00'
blue: '#5c5cff'
magenta: '#ff00ff'
cyan: '#00fff
white: '#ffffff'
xterm_dark: &dark
# Default colors
primary:
background: '#000000'
foreground: '#ffffff'
# Normal colors
normal:
black: '#000000'
red: '#cd0000'
green: '#00cd00'
yellow: '#cdcd00'
blue: '#0050cc'
magenta: '#cd00cd'
cyan: '#00adad'
white: '#e5e5e5'
# Bright colors
bright:
black: '#7f7f7f'
red: '#ff0000'
green: '#00ff00'
yellow: '#ffff00'
blue: '#5c5cff'
magenta: '#ff00ff'
cyan: '#00ffff'
white: '#ffffff'
colors: *dark
# colors: *light
在这种情况下,我需要手动更改配置才能更改颜色方案。这不是最糟糕的事情,但通过键盘快捷键来改变它会很好。
答案1
[我不确定这是这个问题的正确位置,所以请告诉我:)]
由于这是我在这里的第一个答案,我不知道这是否是该问题的正确位置:-)。但是,不久前我遇到了同样的问题,并使用以下 python 脚本修复了它:
#!/usr/bin/env python
import yaml
import os
import re
CONFIG_FILE_NAME = "alacritty.yml"
CONFIG_FILE_DIR = os.path.expanduser("~/.config/alacritty/")
CONFIG_FILE_PATH = os.path.join(CONFIG_FILE_DIR, CONFIG_FILE_NAME)
COLOR_SCHEME_LINE_SEARCH = "colors: \*(\S+)"
COLOR_SCHEME_LINE_TEMPLATE = "colors: *{}\n"
with open(CONFIG_FILE_PATH, "r") as config_file:
config = yaml.safe_load(config_file)
config_file.seek(0)
lines = config_file.readlines()
colors_line_index = -1
for i, line in enumerate(lines):
match = re.search(COLOR_SCHEME_LINE_SEARCH, line)
if match is not None:
current_color_scheme = match.group(1)
colors_line_index = i
available_color_schemes = list(config["schemes"].keys())
color_scheme_index = available_color_schemes.index(current_color_scheme)
color_scheme_index = \
(color_scheme_index + 1) % len(available_color_schemes)
lines[colors_line_index] = COLOR_SCHEME_LINE_TEMPLATE.format(
available_color_schemes[color_scheme_index])
with open(CONFIG_FILE_PATH, "w") as config_file:
for line in lines:
config_file.write(line)
根据您的 alacritty 配置文件所在的位置,您可能需要调整 CONFIG_FILE_NAME 和 CONFIG_FILE_DIR。为了使脚本正常工作,将配色方案的锚点命名为与配色方案本身完全相同的名称非常重要,例如:
schemes:
example_color_scheme: &example_color_schme
primary:
...
normal:
...
bright:
...
除此之外的Python包皮亚姆尔必须安装在您的系统上,该脚本必须可由用户执行,并且该脚本必须可从用户的 PATH 访问。
另外,我将以下内容放入我的 alacritty 配置文件中:
key_bindings:
- { key: F, mods: Control, command: {program: "set_colorscheme.py"} }
这样,我可以通过按 <CTRL-F> 循环浏览我的颜色方案。
你可以查看我的 sciptgithub 上的点文件。
我希望这有帮助。