DEVELOP.md 重写为接手友好的版本,新增: - 第〇节「接手先读」:现状速览、已有产物、第一件事(pnpm install --ignore-scripts + npm test) - 第六节「分支策略与 Windows 7」:main(38)/win7(22) 的差别与维护方式、 为什么锁 22(官方公告 + 真实报错)、**判断一个包能不能在 Win7 上跑的三条方法** (包内 version 文件 / PE 子系统版本 / 导入表,附可直接跑的脚本) - 第八节踩坑记录扩到 7 条:新增「判断兼容性别搜文件字节、要读导入表」 与「与当前时间耦合的 bug 只在特定时段露头」 - 第九节「已知可再做」补上两分支同步、国产平台(飞腾可 / 龙芯不行) - 第十节变更记录 README:说明 Windows 7 该用 win7 那个包,并给出拿错包时的典型报错。
117 lines
4.9 KiB
Markdown
117 lines
4.9 KiB
Markdown
# ClockLab · 可调速桌面时钟
|
||
|
||
一个用于**演练、演示、排练**的小工具:一个**可以任意调速的时钟**(走快、走慢、暂停、**倒着走**、一键快进),配上随时可开的**满屏时钟窗口**。
|
||
|
||
典型用法:现场排练时把时钟投到第二块屏上,需要"跳过 30 分钟"或"把时间倒回去重来一遍"时,不用真的等 —— 在控制窗口点一下就行。
|
||
|
||
---
|
||
|
||
## 一、两个窗口
|
||
|
||
程序启动后只出来**一个**窗口:
|
||
|
||
- **控制窗口** —— 普通窗口,所有操作都在这里;
|
||
- **时钟窗口** —— **默认不出现**,由控制窗口的「打开时钟窗口」按钮创建/关闭。
|
||
|
||
**时钟窗口的特点**:无标题栏、无工具栏、无边框 —— 投屏时不会露出窗口装饰。它**可以拖动移动**(按住空白处拖),**可以拖四条边和四个角改变大小**(最小 260×150)。
|
||
|
||
---
|
||
|
||
## 二、怎么操作
|
||
|
||
### 时钟窗口那一块
|
||
|
||
| 功能 | 说明 |
|
||
| --- | --- |
|
||
| **打开 / 关闭时钟窗口** | 按钮文案会跟着状态变;关掉随时能再开 |
|
||
| **时钟窗口始终置顶** | 让它压在所有窗口之上(现场投屏基本都要开) |
|
||
| **控制窗口始终置顶** | 单独一个开关,两个窗口互不影响 |
|
||
|
||
> 提醒:时钟窗口用的是**比普通置顶更硬**的级别,**可能会盖住任务栏**。如果你希望它"温柔"一点,见《DEVELOP.md》里的说明。
|
||
|
||
### 显示样式
|
||
|
||
- **纯数字** —— 大字号电子钟,`HH:MM:SS` 加日期;
|
||
- **圆形表盘** —— 带时针 / 分针 / 秒针的表盘。
|
||
|
||
切换**立即生效**,不用重开窗口。
|
||
|
||
### 时间与流速
|
||
|
||
| 功能 | 说明 |
|
||
| --- | --- |
|
||
| **设定时间** | 填时 / 分 / 秒,点应用,时钟立刻跳到那个时间 |
|
||
| **填入当前显示时间** | 把输入框一键填成时钟**现在显示**的时间(改之前先看一下当前值) |
|
||
| **倍率** | 支持 **正数、负数、0、小数**:`1` 正常、`2` 两倍速、`-1` **倒着走**、`0` 暂停、`0.5` 半速 |
|
||
| **暂停 / 继续** | 暂停后按钮会变成「**继续(回到 ×N)**」,N 是暂停前的倍率,点一下按原速度接着走 |
|
||
| **快进** | `+5 秒` / `+1 分钟` / `+5 分钟` / `+10 分钟` / `+30 分钟`,点了立刻往前跳(与当前倍率不冲突,倒着走时点快进也是往前跳) |
|
||
|
||
几个组合起来的效果:
|
||
|
||
- 想现场"重新来一遍":倍率填 `-1`,时钟就倒着走;到点了点「暂停」,再点 `+30 分钟` 往前调。
|
||
- 想演示"时间飞逝":倍率填 `10`,秒针会飞快转。
|
||
- 只想让时钟停在那儿:点「暂停」。
|
||
|
||
### 跳转时的动画
|
||
|
||
**快进、设定时间、继续**这些**一次性跳变**会播放动画:数字滚到新值、表盘指针扫过去(约 0.35 秒)。
|
||
|
||
**正常走时、倒转、高倍率不加动画** —— 那时数字本来就在飞快变化,再加动画只会糊成一团。跳变幅度小于 1.5 秒也直接跳(免得正常走时每秒都抖一下)。
|
||
|
||
---
|
||
|
||
## 三、怎么运行
|
||
|
||
### Windows
|
||
|
||
解压对应的包,双击里面的 **`ClockLab.exe`**。绿色版,不写注册表、不需要安装。
|
||
|
||
| 你的系统 | 用哪个包 |
|
||
| --- | --- |
|
||
| **Windows 7**(会议室那台) | `ClockLab-1.0.0-win7-x64.zip` —— 运行时锁在 Electron 22,**最后一个支持 Win7 的版本** |
|
||
| Windows 10 / 11 | 上面那个也能跑;`ClockLab-1.0.0-win-x64.zip`(Electron 38,主线)同样可以 |
|
||
|
||
> ⚠️ **别拿 Win10/11 那份去 Win7 上跑**:它会报 `GetPackageFamilyName … KERNEL32.dll` 找不到入口点 —— 那是 Electron 23+ 的已知表现(详见 [DEVELOP.md](./DEVELOP.md) 第六节)。
|
||
|
||
### Linux(ARM64)
|
||
|
||
```bash
|
||
tar -xzf ClockLab-1.0.0-linux-arm64.tar.gz # 解压(约 290 MB)
|
||
cd ClockLab-1.0.0-linux-arm64
|
||
./clocklab
|
||
```
|
||
|
||
> ⚠️ **解压前建议先校验**:`sha256sum ClockLab-1.0.0-linux-arm64.tar.gz` 对着交付时给的哈希看一眼。传输中断过的话,`tar` 会报 `异常的 EOF`,那就是没传完(不是包坏了)。
|
||
|
||
---
|
||
|
||
## 四、常见问题
|
||
|
||
**界面黑屏 / 花屏 / 一闪就退(国产平台常见)**
|
||
|
||
多半是显卡驱动下的硬件加速不兼容,用这两个参数之一启动:
|
||
|
||
```bash
|
||
./clocklab --disable-gpu # 关掉硬件加速(最常用)
|
||
./clocklab --in-process-gpu # 或者让 GPU 跑在主进程里
|
||
```
|
||
|
||
**窗口拖不动 / 改不了大小**
|
||
|
||
先确认拖的是**时钟窗口的空白处**(按钮和边缘热区不在拖动区内);改大小要把鼠标移到**四条边或四个角**上(光标会变成双向箭头)。
|
||
|
||
**文字太小 / 太大**
|
||
|
||
直接拖时钟窗口的边缘改变尺寸,数字和表盘会跟着缩放。
|
||
|
||
---
|
||
|
||
## 五、这个项目在哪
|
||
|
||
源码与构建说明见同目录的 **[DEVELOP.md](./DEVELOP.md)**。已经打好的包在 `dist/`:
|
||
|
||
```
|
||
dist/ClockLab-1.0.0-win-x64.zip Windows x64 绿色版
|
||
dist/ClockLab-1.0.0-linux-arm64.tar.gz Linux ARM64(飞腾 D2000 等)
|
||
```
|