You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在使用TUI工具FZF时临时修改Windows Terminal标题栏并在退出后恢复?

如何在使用TUI工具FZF时临时修改Windows Terminal标题栏并在退出后恢复?

嘿,这个需求完全可以实现!核心思路就是在启动fzf前先保存当前终端的标题,临时修改成带标记的标题,等fzf退出后再把原标题恢复回来——这样AutoHotkey就能通过标题里的[[FZF MODE]]轻松识别fzf是否处于活跃状态了。

我自己在Windows Terminal Preview + PowerShell 7里亲测有效,具体步骤如下:

  1. 创建自定义的fzf调用函数
    打开PowerShell,把下面的代码定义成一个函数,它会帮你自动处理标题的切换:

    function fzf-with-title {
        # 先保存当前终端的原始标题
        $originalTitle = $host.ui.RawUI.WindowTitle
        # 修改标题为带FZF模式标记的内容
        $host.ui.RawUI.WindowTitle = "$originalTitle - [[FZF MODE]]"
        # 启动fzf,保留原命令的所有参数(@args会传递你输入的参数)
        fzf @args
        # 等fzf退出后,立刻恢复原始标题
        $host.ui.RawUI.WindowTitle = $originalTitle
    }
    
  2. 让函数永久生效
    如果你希望每次打开PowerShell都能直接用这个函数,把它添加到你的PowerShell配置文件里:

    • 在PowerShell里输入 notepad $PROFILE 打开配置文件(如果提示文件不存在,直接新建一个就行)
    • 把上面的函数代码粘贴进去,保存后关闭记事本
    • 输入 . $PROFILE 让配置立即生效,或者重启Windows Terminal

之后你只要用 fzf-with-title 代替原来的 fzf 命令,终端标题就会自动切换:

  • 启动前:PowerShell 7 - C:\TEMP
  • 运行fzf时:PowerShell 7 - C:\TEMP - [[FZF MODE]]
  • 退出后:自动恢复成 PowerShell 7 - C:\TEMP

这样AutoHotkey就能通过检测标题中的[[FZF MODE]]字符串,精准判断fzf是否在运行,完美解决你的热键自定义需求~

备注:内容来源于stack exchange,提问作者LazyCaterinxxx

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.23 08:34:31