logo
0
0
WeChat Login
docs: 更新README中的路径说明

WezTerm 主题预览与选择工具

一个专门用于 WezTerm 终端模拟器的主题配色预览工具,支持快速循环切换 1000+ 配色方案,方便直观地查看配色显示效果,帮助您选择最适合的主题。

项目背景

在传统 WezTerm 主题选择过程中,通常需要:

  • 修改配置文件
  • 重启终端
  • 查看效果
  • 若不满意,重复上述步骤

本工具通过快捷键实时切换主题,无需重启终端,极大提升了主题选择的效率。

核心功能

  • 🎯 快速预览:使用 Ctrl+[ 和 Ctrl+] 在 1000+ 主题间快速切换
  • 👀 实时效果:切换主题无需重启 WezTerm,立即生效
  • 📋 主题名称显示:状态栏实时显示当前主题名称
  • 💾 记忆功能:自动记住上次选择的主题
  • 🎨 丰富选择:内置从 wezterm.org 提取的完整主题库

快速开始

1. 配置 WezTerm

在 WezTerm 主配置文件(通常是 ~/.wezterm.lua)中添加,将路径替换为实际的文件路径:

dofile [[/path/to/wezterm-theme-cycle/cycle_theme.lua]]

为避免其他配置干扰,建议只保留这一行,暂时移除其他配置

2. 启动 WezTerm 并预览主题

通过环境变量指定主题文件路径和索引文件路径:

  • WEZTERM_THEME_LIST:主题文件绝对路径,文本文件,每行一个主题名称
  • WEZTERM_THEME_IDX:索引文件绝对路径,无需手动创建,配置脚本会自动生成

建议使用另一个终端窗口启动 WezTerm,并保留原终端窗口,方便查看日志

Windows PowerShell

$env:WEZTERM_THEME_LIST = "C:/path/to/wezterm-theme-cycle/all_theme.txt" $env:WEZTERM_THEME_IDX = "C:/path/to/wezterm-theme-cycle/idx.txt" wezterm

Linux/macOS Bash

WEZTERM_THEME_LIST="/path/to/wezterm-theme-cycle/all_theme.txt" \ WEZTERM_THEME_IDX="/path/to/wezterm-theme-cycle/idx.txt" \ wezterm

3. 开始预览主题

启动 WezTerm 后,使用快捷键:

  • Ctrl+] - 切换到下一个主题
  • Ctrl+[ - 切换到上一个主题

观察终端窗口的变化,状态栏会显示当前主题名称。

使用场景

场景1:快速浏览所有主题

# 连续按 Ctrl+] 浏览所有 1000+ 主题 # 看到喜欢的主题时,记下名称

场景2:特定类型主题筛选

# 专注查看浅色主题 $env:WEZTERM_THEME_LIST = "/path/to/wezterm-theme-cycle/light_theme.txt" # 专注查看深色主题 $env:WEZTERM_THEME_LIST = "/path/to/wezterm-theme-cycle/dark_theme.txt"

场景3:确定最终选择

当您找到满意的主题后:

  1. 记下状态栏显示的主题名称
  2. 在 WezTerm 配置文件中直接设置该主题
  3. 移除本工具的相关配置

主题数据管理

获取最新主题列表

主题数据来自 wezterm.org,如需更新:

# 下载最新的主题页面,保存到 ./theme_html_page 目录(自动跳过已存在的文件) node tool/fetch_theme_page.js # 从 HTML 文件提取主题名称生成列表,保存到 ./all_theme.txt 文件 node tool/extract_theme.js

自定义主题列表

您可以编辑 all_theme.txt 文件,只保留感兴趣的主题,创建精简的预览列表。

常见问题

Q: 主题切换没有效果?

A: 可能是该主题不存在,请查看启动 WezTerm 的终端窗口,是否有 "that scheme was not found" 输出。

Q: 如何知道当前是哪个主题?

A: WezTerm tab 栏最右侧会显示当前主题名称。

Q: 这个工具会影响我的常规配置吗?

A: 可能会影响,WezTerm 配置复杂,无法预估所有边界情况。为避免多套配置互相干扰,使用 cycle_theme 配置预览主题时建议移除其他配置,选好主题后再还原。

项目文件说明

  • cycle_theme.lua - wezterm的配置文件, 主配置文件中通过 dofile 引用此文件
  • all_theme.txt - 从wezterm官网获取的完整主题列表
  • light_theme.txt - 浅色主题列表
  • dark_theme.txt - 深色主题列表
  • tool/*.js - 主题数据更新工具, 使用node运行

使用建议

  1. 筛选阶段:根据偏好选择 light_theme.txtdark_theme.txt
  2. 预览阶段:在 WezTerm 中使用 Ctrl+]Ctrl+[ 快捷键预览主题
  3. 最终选择:找到几个喜欢的主题后,再深入测试, 打开你常用的界面, 比如 vim git-diff 等, 查看配色兼容性

快速找到你心仪的终端主题! 🎨