系统极客一直在努力
专注操作系统及软件使用技能

Fish Shell 4.3 发布:重构配置逻辑,终端体验大升级

Fish Shell

Fish Shell 4.3 正式发布!新版本对配置文件的处理逻辑进行了全面重构,并在脚本编写能力与终端交互体验上带来了显著提升。

Fish Shell 4.3 主要更新

核心变更:配置逻辑的「现代化」重构

本次更新最值得关注的底层变化是,Fish 不再自动设置「通用变量」。

  • 作用域调整fish_color_*fish_pager_color_*fish_key_bindings等高频使用的变量,现在改为在「全局作用域」中定义。
  • 迁移机制:当你从旧版本升级并首次启动 Fish 4.3 时,系统会执行「一次性迁移」——将当前的主题配色和键位绑定「冻结」并保存为文件,并存放在~/.config/fish/conf.d/目录下。
  • 最佳实践:官方建议用户手动清理这些自动生成的迁移文件,转而在config.fish主配置文件中直接管理主题。

交互体验:更智能的补全与编辑

Fish 向来以「开箱即用」的交互体验著称,4.3 版本在此基础上进一步打磨了细节:

  • 路径补全增强:路径补全的精度大幅提升,尤其在处理包含=:符号的路径时表现更加稳定。同时,补全功能现已支持不区分大小写的前缀匹配。
  • 按键行为优化
    • ctrl-w快捷键更加智能,在删除路径组件时会自动移除多余的转义空格。
    • 引入了全新的路径感知编辑函数,在命令行中导航和修改文件系统路径时更加精准。
  • 视觉与显示
    • 「自动建议」现在支持内容的软换行显示。
    • 修复了启动后首个提示符渲染异常的问题。
    • Cygwin 和 MSYS 环境下的命令补全行为得到优化,可执行文件名称与元数据的对齐更加准确。

终端集成:动态主题与 OSC 增强

Fish 4.3 加强了与现代终端模拟器的深度集成:

  • 动态主题适配:Fish 主题现在支持根据终端「配色方案」动态切换。你可以定义独立的「亮色」和「暗色」区块,Fish 就会自动适配。多款默认主题已跟进支持此特性。
  • OSC 信号改进:通过更一致的 OSC 信号处理,Fish 能准确报告当前工作目录(CWD),并为支持 Shell 集成的终端提供更清晰的提示符边界。
  • 焦点报告:Focus reporting 功能现已默认启用。同时新增了一个「特性标志」,允许用户在不需要时禁用特定于终端的变通方案。

脚本能力与稳定性修复

对于脚本开发者和系统管理员,新版本同样带来了实用改进:

  • 脚本工具:新增status language命令,允许在不修改环境变量的情况下,查看或修改 Fish 系统消息的语言设置。
  • 调试增强fish_trace=all的追踪范围进一步扩大,现在涵盖了键位绑定、事件处理器以及提示符函数。
  • 非交互式修正:修复了非交互式会话中的补全处理,commandline --cursor行为现已回归正常。

此外,Fish Shell 4.3 还解决了前几个版本遗留的稳定性问题,包括:

  • 颜色变量引发的崩溃问题;
  • Unicode 自动建议的异常;
  • macOS 平台下 Emoji 宽度的显示问题;
  • 多行输入时的边缘情况;
  • 非 glibc 系统上的补全故障。
赞(0)
分享到

评论 抢沙发