Golang語言開發出的終端應用盤點
彈指一揮間,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 文件讀取,此外它還有可選的相同單元格合并,設置自定義標題,多行單元格中的段落可選重排等功能。