refactor(core): ♻️ 优化终端宽度检测逻辑为动态获取

通过引入 terminal_width 函数,将原本固定的终端宽度检测逻辑重构为动态获取。当未指定固定宽度时,脚本将实时读取当前终端窗口尺寸,提升了在不同交互环境下(如窗口缩放)的显示适配能力。

同时更新了配套文档,明确了命令行参数、环境变量与动态检测之间的优先级关系。
This commit is contained in:
2026-05-04 02:02:23 +08:00
parent 3c980ec87a
commit 6a0fe9dded
2 changed files with 62 additions and 24 deletions

View File

@@ -42,7 +42,7 @@ chmod +x brew-upgrade-manager.sh
./brew-upgrade-manager.sh
```
定终端宽度:
默认会动态读取当前终端宽度;运行过程中缩放窗口时,`brew cu` 的 PTY 尺寸也会跟随更新。如果遇到非交互环境或某些表格渲染异常,可以指定固定终端宽度:
```bash
./brew-upgrade-manager.sh --width 130
@@ -55,7 +55,7 @@ chmod +x brew-upgrade-manager.sh
HB_TERMINAL_WIDTH=130 ./brew-upgrade-manager.sh
```
优先级为:命令行 `--width` 高于 `HB_TERMINAL_WIDTH`,再高于自动检测值
优先级为:命令行 `--width` 高于 `HB_TERMINAL_WIDTH`。两者都不设置时使用动态终端宽度
## sudo 认证
@@ -91,7 +91,7 @@ brew tap buo/cask-upgrade
### 表格渲染或 Ruby 报终端宽度错误
使用固定宽度运行:
默认会跟随终端窗口变化;如果某些环境无法正确报告窗口尺寸,可以使用固定宽度运行:
```bash
./brew-upgrade-manager.sh --width 130