找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

4237

积分

0

好友

585

主题
发表于 2 小时前 | 查看: 1| 回复: 0

Liney开发环境界面展示

前几天在Twitter上看到了@onevcat的一条推文,展示了一个能快速搭建的终端画布界面。这让我思考:如果开发一个终端应用真的这么简单,为什么不为自己量身打造一个呢?毕竟在当前以Vibe Coding为主流的开发模式下,一个高效的终端就是效率的核心。一个深度集成个人工作流的专属终端,或许能带来显著的效率提升。

推特截图展示终端画布灵感

经过初步调查,我发现这类终端应用的开发门槛确实已经大大降低。核心原因在于Ghostty终端应用的作者Mitchell Hashimoto将其底层的 libghostty framework 开源了。

关于libghostty的详细介绍可以阅读作者的博客:https://mitchellh.com/writing/libghostty-is-comingGhostty及其底层库的代码仓库是:https://github.com/ghostty-org/ghostty。开源之后,GitHub上已经涌现了许多基于此框架构建的终端应用,具体列表可以参考这个Awesome仓库:https://github.com/Uzaaft/awesome-libghostty

作为长期进行高强度Vibe Coding的开发者,我的终端使用历程大致是:从Warp切换回iTerm2,再到最近尝试大火的Ghostty。虽然这些工具本身没有问题,但日常开发中确实存在大量重复、机械的操作,例如:

  1. 频繁创建Git工作树(Worktree)以进行并行开发。
  2. 反复运行特定的AI编程代理命令(如Codex)。
  3. 在不同项目窗口间不断切换。
  4. 频繁查看代码差异(Diff)。
  5. 需要在终端和代码编辑器之间快速跳转。

受那条推特的启发,我决定动手开发一个自己的终端,这样任何能想到的、能提升效率的功能都可以随时添加。经过几天的集中开发,这个名为Liney的终端应用终于成型。

项目主页https://liney.dev/
开源代码https://github.com/everettjf/liney

Liney基于AppKitSwiftUI以及核心的libghostty框架开发。对于热衷于探索前沿技术和工具实践的开发者来说,这正是一个很好的开源实战案例。下面简单介绍它的核心功能:

1. 基础终端与项目管理

作为终端,最基本的功能是管理多个项目会话。Liney支持添加多个项目工作区,每个工作区会自动分配一个随机图标,你也可以通过右键菜单自定义图标,增添一点个性化色彩。

代码编辑器与终端协同工作界面

2. 一键式Git工作树(Worktree)管理

对于需要并行处理多个功能分支的Vibe Coding来说,Worktree是刚需。Liney内建了便捷的Worktree创建功能,可以轻松地从当前分支派生出新的工作目录,实现真正的并行开发,而无需复杂的Git命令。

工作区右键菜单展示创建Worktree选项
创建Worktree的对话框界面

3. 全局概览(Overview)面板

Overview面板提供了所有项目的全局视图,你可以一眼看清每个项目终端的当前状态、Git仓库的改动情况以及活跃的会话,方便快速掌握开发进度。

全局概览面板展示所有项目状态

4. 实时画布(Canvas)视图

Canvas功能可以实时显示所有终端窗口的缩略视图,你甚至可以直接在Canvas上向任意窗口输入命令。这个功能的灵感直接来源于Twitter上的分享,目前处于初期阶段,可能存在一些Bug,但概念非常有趣。

Canvas画布视图展示所有终端会话

5. macOS防休眠工具

这是一个实用小工具,源于我之前分享过的一个需求。它可以防止Mac在一段时间内进入睡眠状态,对于需要长时间运行编译或脚本的任务非常有用。
使用方法很简单:

  1. 点击状态栏图标。
  2. 选择需要防止休眠的时长(如1小时、3小时等)。

防休眠工具菜单选项

点击后,终端会提示macOS sleep prevention is active for 1 hour.,确保Mac在该时段内保持唤醒。

终端显示防休眠已激活

6. 快速启动外部编辑器/IDE

当你需要快速用图形化编辑器查看代码时,可以直接通过右键菜单或快捷键,一键在CursorZedVS CodeSublime Text中打开当前工作区。

打开外部编辑器的菜单选项

7. 快速命令面板

你可以自定义一组常用命令,并通过快速命令面板一键执行。例如,我每天都需要输入--dangerously-bypass-approvals-and-sandbox这类长命令,现在只需点一下即可。

快速命令面板展示预置命令

8. 内置Diff查看器

Liney集成了基础的代码差异对比功能,可以直接在终端侧边栏或独立窗口中查看文件的变更内容,方便代码审查。

内置Diff查看器对比代码差异

9. 命令速查窗口(Cmd+P)

通过Cmd+P可以调出命令速查窗口,快速搜索并执行软件内的各种命令或导航到不同工作区。

Cmd+P命令速查窗口界面

10. 基础分屏与多标签

支持使用Cmd+D(垂直分屏)和Cmd+Shift+D(水平分屏)进行分屏操作。Cmd+T可以创建新标签页,满足多任务处理的需求。

终端分屏功能按钮提示
新标签页创建后的界面

除了上述功能,在AI辅助开发的过程中,我还实现了SSH远程连接管理AI Agent快捷入口等功能模块,但由于尚未经过充分测试,目前暂时隐藏。后续会逐步完善并开放。

安装与使用

Liney提供两种安装方式:

  1. 通过Homebrew安装(推荐)

    brew update && brew install --cask everettjf/tap/liney
  2. 手动下载DMG安装包
    前往GitHub Releases页面下载最新版本的DMG文件:https://github.com/everettjf/liney/releases

应用内部已集成Sparkle框架,支持自动更新。

关于名字“Liney”,它由AI(Codex)建议,由“Line”加“y”构成,发音类似“辣埃尼”,寓意简单的一条线(Y轴),当时恰好相关域名也可注册。

结语

Liney未来的发展方向仍将聚焦于提升Vibe Coding和并行开发效率。我会持续将自己常用的功能集成进去。如果你有好的想法或需求,欢迎在Git仓库提交Issue:https://github.com/everettjf/liney/issues

开发者广场里,我们经常讨论各种提升开发体验的新工具,Liney也正是这种极客精神的产物。当然,一个好用的终端提示符(Prompt)也至关重要,我配合使用的是Starshiphttps://starship.rs/),配置简单且功能强大,之后可以另开一文详细介绍。

希望Liney能为你带来更流畅、更专注的开发体验。




上一篇:大厂员工北京买房后心声:这城市只适合挣钱,离开后生活才真实
下一篇:告别重复操作:四款Python自动化工具横评(附代码示例)
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-3-23 07:13 , Processed in 0.506197 second(s), 41 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表