终端程序

neovim

lazygit

lazygit是一个Go编写的终端下的git TUI客户端,丰富的快捷键操作非常快速,同时也支持鼠标切换标签。
lazygit的tui是作者基于tcell实现的gocui。
基于tcell的终端程序还有lf,fzf等。

lf/ranger/nnn

三个都是终端下的文件浏览器

程序对比

项目lfrangernnn
启动速度🚀 非常快(Go 编写)🐢 较慢(Python 写的)🚀 极快(C 语言编写)
响应速度非常流畅偶尔有卡顿极速、适合大目录操作
占用资源较低较高极低,适合老机器/服务器
多窗格浏览✅(主+预览)✅(3窗格:父、当前、子)✅(分栏少,但支持目录跳转)
文件预览✅(需配置 preview script)✅(内置很多 preview 支持)✅(需配合 preview-tui.sh)
图片/视频预览✅(配合 ueberzug 或 chafa)✅(同上)✅(同上,但依赖少)
Vim 风格操作✅(也支持 Emacs)
标签/书签
文件操作✅(重命名、复制、移动等)✅(甚至可以当微型终端用)
插件机制❌(通过 shell script 扩展)✅(插件生态丰富)✅(插件多,甚至可以当终端启动器)
项目lfrangernnn
配置语言Shell 脚本 + 配置文件Python + rc.conf环境变量 + 插件脚本
插件支持有,但无统一插件系统✅ 丰富的插件体系(ranger devtools)✅ 多个官方/社区插件(集成在文档中)
外部命令集成✅ 强依赖 shell✅ 也依赖 shell✅ 支持通过插件调用外部程序
脚本自由度很高(你爱怎么写就怎么写)非常高(Python 可玩性高)一定程度受限,但也足够强大

mutt

newsboat