Skip to content

feat(app): per-pane custom label in titlebar #27

feat(app): per-pane custom label in titlebar

feat(app): per-pane custom label in titlebar #27

Workflow file for this run

name: Release
on:
push:
tags:
- "v*"
permissions:
contents: write
jobs:
macos-dmg:
name: Build macOS DMG
# Zig 0.15.2's build runner fails to link libc on macOS 26 / Xcode 26
# (undefined _abort/_free/...). Pin until Zig catches up.
runs-on: macos-15
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
- name: Show toolchain
run: |
set -euxo pipefail
uname -a
swift --version
xcode-select -p
xcrun --show-sdk-path
test -f Vendor/ghostty/build.zig
- name: Install Zig
run: |
set -euxo pipefail
mkdir -p .tools
case "$(uname -m)" in
arm64) ZIG_ARCH=aarch64 ;;
x86_64) ZIG_ARCH=x86_64 ;;
*) echo "unsupported arch: $(uname -m)"; exit 1 ;;
esac
curl -fL "https://ziglang.org/download/0.15.2/zig-${ZIG_ARCH}-macos-0.15.2.tar.xz" -o .tools/zig.tar.xz
tar -xf .tools/zig.tar.xz -C .tools
echo "${GITHUB_WORKSPACE}/.tools/zig-${ZIG_ARCH}-macos-0.15.2" >> "$GITHUB_PATH"
".tools/zig-${ZIG_ARCH}-macos-0.15.2/zig" version
- name: Build Ghostty VT
working-directory: Vendor/ghostty
run: |
set -euxo pipefail
export SDKROOT="$(xcrun --show-sdk-path)"
zig build \
--global-cache-dir "${GITHUB_WORKSPACE}/.zig-cache-global" \
-Demit-lib-vt=true \
-Demit-xcframework=false \
-Doptimize=ReleaseFast
test -f zig-out/lib/libghostty-vt.a
- name: Architecture guard
run: scripts/check-architecture.sh
- name: Test
run: swift test --no-parallel
- name: Build DMG
env:
VERSION: ${{ github.ref_name }}
BUILD: ${{ github.run_number }}
run: |
VERSION="${VERSION#v}" BUILD="$BUILD" scripts/build-dmg.sh release
- name: Publish GitHub Release
uses: softprops/action-gh-release@v2
with:
files: dist/*.dmg
draft: false
prerelease: false
generate_release_notes: true
body: |
ProGhostty ${{ github.ref_name }} 正式版。
## v0.4.6 · 文件信息与项目面板
- **文件卡片**:点击终端里的文件路径,弹出 Finder 风格卡片——系统文件图标、文件名、修改/创建时间、大小(目录标注为文件夹);「复制路径」现在复制解析后的**绝对路径**(原为原始 token)。菜单文案随软件语言(中/英)。
- **项目面板(点击标题栏路径)**:一个独立于终端内容的项目仪表盘——仓库名、绝对路径、当前分支、工作区改动(N 处修改 · M 个新增)、最近两次提交(元信息 + 两行提交说明)。git 信息在后台只读获取、带超时、**不触网不弹认证**;点击瞬间用 `.git` 判断决定面板形态与宽度,结果到达后高度平滑展开。
- 修复:链接光标不再闪成文本选择器;从链接上拖拽只选拖过的范围、三指多选不再误触发菜单;单击链接改在抬起时弹出。
## v0.4.5 · URL 语义对象交互
- **停留唤醒(dwell)**:鼠标停在链接/路径上约 60ms,整段(含跨行)原地加粗——只改字重、不位移、不染色;快速划过无反应。再停一会儿末尾淡入 `↗`。
- **圆环光标**:移到可交互对象上,指针变成一枚干净圆环(独立 CALayer 合成,跟手不卡);随背景明暗自动取深/浅两色。
- **点击菜单**:单击链接弹出「在浏览器打开 / 复制链接」,路径为「在访达显示 / 复制路径」;⌘-click 直接打开。
- **裸词路径**:无 `/` 前缀的文件/目录名,只要在当前 cwd 下真实存在也可点击。
- **⌘ Explore**:按住 ⌘ 全屏点亮所有可交互对象;⌘+其他键或失焦即退出,不再卡在展开态。
- **旁路输入(⌘P)**:输入框开启时终端对鼠标惰性,避免与悬停交互打架。
- 修复:链接检测的正则/路径存在性缓存(消除悬停卡顿)、toast 重复点击不再只弹一次且能持续显示。
## 自 v0.4.4
- 跨行链接 ⌘-click、设置窗标题黏底、Soft Light 正文字纯黑。
## 自 v0.4.3
- 分屏拉伸/错位、reflow 闪动、关分屏崩溃、最后一块分屏误关、历史选区边缘滚动修复。
## 自 v0.4.0
- Pattern-2 平滑像素滚动、Metal 直绘 expanded grid;最低 **macOS 14**。