路线图
- 装包:Nerd Font + starship + eza + bat + fastfetch
- alacritty:换字体 + 套 Catppuccin Mocha 主题
- fish:接入 starship + 设置 eza/bat 缩写
- 验收:看最终效果
一、安装软件包
这五个包都在官方仓库,一条命令搞定:
sudo pacman -S ttf-jetbrains-mono-nerd starship eza bat fastfetch
二、配置 Alacritty
1. 写入 Mocha 主题,收起旧主题
mv ~/.config/alacritty/dank-theme.toml ~/.config/alacritty/dank-theme.toml.bak
curl -fLo ~/.config/alacritty/catppuccin-mocha.toml https://github.com/catppuccin/alacritty/raw/main/catppuccin-mocha.toml
wc -l ~/.config/alacritty/catppuccin-mocha.toml; head -n 3 ~/.config/alacritty/catppuccin-mocha.toml
mv 是把旧的 dank 主题改名收起——留一份备份,也避免多套主题互相覆盖;curl 的 -f 保证 HTTP 出错时直接失败,而不是把 404 页面当成主题文件存下来,-L 用于跟随 GitHub 的跳转。
2. 写入主配置
begin
echo 'general.import = ["~/.config/alacritty/catppuccin-mocha.toml"]'
echo ''
echo '[window]'
echo 'opacity = 0.95'
echo 'padding = { x = 10, y = 10 }'
echo ''
echo '[font]'
echo 'size = 11.5'
echo ''
echo '[font.normal]'
echo 'family = "JetBrainsMono Nerd Font"'
echo 'style = "Regular"'
echo ''
echo '[font.bold]'
echo 'family = "JetBrainsMono Nerd Font"'
echo 'style = "Bold"'
echo ''
echo '[font.italic]'
echo 'family = "JetBrainsMono Nerd Font"'
echo 'style = "Italic"'
echo ''
echo '[font.bold_italic]'
echo 'family = "JetBrainsMono Nerd Font"'
echo 'style = "Bold Italic"'
end > ~/.config/alacritty/alacritty.toml
cat ~/.config/alacritty/alacritty.toml
预期输出:写入无提示,最后 cat 回显整个文件,首行是 general.import = [...],共 24 行。
写完后有两个可调点(以后想改直接编辑这个文件,alacritty 会热重载):
- 透明度:不喜欢朦胧感就把
opacity = 0.95改成1.0 - 字号:
size = 11.5按需调整
然后开一个新的 alacritty 窗口——旧窗口在启动时就已经读完配置,不会自动变色。新窗口应该看到:背景变成 Mocha 的深蓝黑、文字是柔和的米白、字体变成 JetBrains Mono,窗口带轻微透明和内边距。
三、配置 fish
1. 关掉欢迎语
fish 的持久变量一条命令永久关掉,不用动任何配置文件:
set -U fish_greeting
set -U 是 fish 的「跨会话持久变量」,写一次对所有新开的 fish 生效,欢迎语从此消失。如果它没生效,见文末《常见问题》里的排查方法。
2. 接入 starship 与 eza/bat 缩写
往 config.fish 末尾追加(>> 不会动你已有的内容):
begin
echo ''
echo '# --- terminal rice: starship prompt ---'
echo 'if status is-interactive'
echo ' starship init fish | source'
echo ''
echo ' # eza & bat abbreviations'
echo ' abbr -a ls eza'
echo ' abbr -a ll "eza -l --git --icons=auto"'
echo ' abbr -a la "eza -la --git --icons=auto"'
echo ' abbr -a lt "eza --tree --level=2 --icons=auto"'
echo ' abbr -a cat bat'
echo 'end'
end >> ~/.config/fish/config.fish
tail -n 12 ~/.config/fish/config.fish
缩写(abbr)是 fish 的原生功能——敲 ls 回车前它会原地展开成 eza,看得见也改得掉,比 alias 更透明;而且只作用于交互式输入,脚本里的 ls、cat 不受影响。不需要把 cat 换成 bat 的话,删掉那行即可。
3. 应用 Catppuccin Powerline 预设
starship preset catppuccin-powerline -o ~/.config/starship.toml
head -n 6 ~/.config/starship.toml
这条命令会把官方预设写进 ~/.config/starship.toml,提示符变成一整条 powerline 分段条:目录、git 状态、语言版本各占一段,用 Nerd Font 箭头衔接,颜色和 Mocha 终端同源。
四、验收
在任意窗口跑:
fastfetch
ls
预期效果:
fastfetch:Arch logo + 系统信息面板(显卡、内核、合成器、终端都会列出来),在 Mocha 配色下观感很整体ls:彩色条目 + 每个文件/目录的 Nerd Font 小图标
可选:开新窗口时显示系统信息
喜欢每次开终端先秀一眼机器状态的,追加这段(新窗口生效):
begin
echo 'if status is-interactive'
echo ' fastfetch'
echo 'end'
end >> ~/.config/fish/config.fish
不想要就不跑,对现有配置零影响。
效果对比

