feat: Logo模块化与渐变色统一
- 修复 --help/-h/-?/--version 在交互模式下无响应的问题 - 新增 internal/logo/logo.go 统一管理logo展示 - 新增 build.sh 自动注入git版本号 - TUI头部与CLI使用统一logo模块 - 移除TUI头部的 [Ctrl+C 退出] 显示 - 统一版本号格式: ( v1.1.1-dirty )
This commit is contained in:
41
changelog.md
41
changelog.md
@@ -498,4 +498,43 @@ yoyo onboard --force
|
||||
- 支持 `~` 路径展开
|
||||
- huh使用v2版本,支持泛型和链式API
|
||||
|
||||
**讨论记录**: [taolun.md#2026-04-07-配置路径修复和huh迁移](taolun.md)
|
||||
**讨论记录**: [taolun.md#2026-04-07-配置路径修复和huh迁移](taolun.md)
|
||||
|
||||
---
|
||||
|
||||
## v1.1.1 (2026-04-08)
|
||||
|
||||
### BUG修复
|
||||
- 修复 `--help` `-h` `-?` `--version` 在默认交互式模式下无响应的问题
|
||||
- 原因:交互模式判断优先于help/version检查,导致flags被忽略
|
||||
|
||||
### 新功能
|
||||
- 新增 `internal/logo/logo.go` 模块,统一管理logo展示
|
||||
- 编译时通过 `-ldflags` 注入版本号,实现动态版本管理
|
||||
- 新增 `build.sh` 脚本,自动获取git版本并注入
|
||||
|
||||
### 改进
|
||||
- 帮助信息和版本输出使用渐变logo(紫→青色)
|
||||
- TUI头部与CLI帮助信息使用统一的logo模块
|
||||
- 移除TUI头部的 `[Ctrl+C 退出]` 显示
|
||||
- 统一版本号格式:` ( v1.1.1-dirty )` 或 ` ( )`(无版本时)
|
||||
|
||||
### 技术细节
|
||||
```go
|
||||
// logo模块核心函数
|
||||
func GradientText(text string, startColor, endColor string) string
|
||||
func GetLogoPattern() string // 返回4行ascii art
|
||||
func GetVersionSuffix() string // 返回 " (v1.1.1-dirty )" 或 " ( )"
|
||||
func PrintLogoWithVersion() // 打印完整logo
|
||||
```
|
||||
|
||||
```bash
|
||||
# build.sh 版本注入
|
||||
VERSION=$(git describe --tags --always --dirty 2>/dev/null || echo "")
|
||||
go build -ldflags "-X github.com/titor/fanyi/internal/logo.version=${VERSION}" -o yoyo ./cmd/yoyo
|
||||
```
|
||||
|
||||
- 渐变色方案:`#B413DC`(紫)→ `#00C8C8`(青)
|
||||
- TUI通过调用 `logo.GradientText(logo.GetLogoPattern(), "#B413DC", "#00C8C8")` 获取渐变logo
|
||||
|
||||
**讨论记录**: [taolun.md#2026-04-08-Logo模块化与渐变色统一](taolun.md)
|
||||
Reference in New Issue
Block a user