深圳幻海软件技术有限公司 欢迎您!

Golang语言开发出的终端应用盘点

2023-02-28

弹指一挥间,golang语言已经诞生十年多了。在这十多年间,golang正在变得越来越强大。我们不去谈docker的成功让golang变得多么出色,我们今天只谈一谈那些由golang开发的终端应用,都说不在终端下工作的程序员不是一个好后台,今天我们就看看golang是如何让终端插上翅膀的。terme

弹指一挥间,golang 语言已经诞生十年多了。在这十多年间,golang 正在变得越来越强大。我们不去谈 docker 的成功让 golang 变得多么出色,我们今天只谈一谈那些由 golang 开发的终端应用,都说不在终端下工作的程序员不是一个好后台,今天我们就看看 golang 是如何让终端插上翅膀的。

termeter

它是一个终端下的数据可视化工具,可以通过文件或者管道接受输入。它可以绘制出各种线性和图表。

gotop

它是一个基于终端的图形活动监视器,受 gtop 和 vtop 启发而开发的。gotop 可以监控在远程机器上运行的 gotop 并在单个实例中显示(某些)指标。它支持插件扩展,可以让监视器变得更加灵活。

termui

termui 是一个跨平台且完全可定制的终端仪表板和小部件库,构建在 termbox-go 之上。它的灵感来自 blessed-contrib 和 tui-rs,纯粹用 Go 编写。

它提供的丰富组件经常被用来构建其它终端项目,termeter 和 gotop 中间都有它的身影。

go-jira-ui

这是一个项目管理工具 jira 命令行版本,通过命令行就可以管理我们的项目。它支持 JQL 查询,支持查询排序,支持标签的添加和删除,支持工单的管理等。

termdash

Termdash 是一个跨平台可定制的基于终端的仪表板。

它主要侧重于代码的可读性、可维护性和可测试性。对于鼠标和键盘的事件响应做了封装。支持布局的二叉树形式和网格形式。

tview

这是一个终端表单组件库。它包括了表单的输入字段,密码字段,下拉框,复选框,按钮等。它支持列表和树状图。

它支持消息窗口和复杂的表格视图。

最重要的是它支持自定义配置,可以轻松进行扩展。

lazygit

这是一个终端下的 git 图形界面,就像它的名字一样,它可以让你对 git 的管理变得异常轻松。

它有着不逊于桌面图形客户端的丰富功能,但是它完全是基于键盘操作的,它让你可以更加精确的,更加清楚地操作和管理你的 git 仓库。

tsk

一个有 golang 开发的终端任务管理工具,它可以轻松地创建和管理你的 todo 任务。

因为省去了 UI 界面,因此我们可以完全有键盘来操作,这样效率会更高,同时,它也做到了极速响应,让你不会感到在使用 js 应用时的那些延迟感。

micro

一个 golang 开发的编辑器,支持按键绑定,支持分屏和标签页,支持语法高亮,支持多光标,支持插件扩展。

轻松配置,安装简单,没有依赖关系,可以说它是 nano 的继承者。

pb

一个终端的进度条工具,可以让你的应用轻松地集成一个进度条。并且它支持模板,你可以自定义自己的进度条样式。

tablewriter

它是一个生成终端 ASCII 表的工具,它支持自动填充,支持多行,支持对齐,支持自定义分隔符,它可以自动对齐数字和百分比。

它支持通过直接写入 http ,文件等 io.Writer,直接从 CSV 文件读取,此外它还有可选的相同单元格合并,设置自定义标题,多行单元格中的段落可选重排等功能。