目录
- 简介
- 快速上手
- 安装
- 使用
- 功能特点
- 竞品和相关作品
- 进一步探索
简介
gum
是由 Charm 团队于 2022 年使用 Go 开发的终端 UI 组件工具箱,能帮用户在终端中快速构建交互式 TUI 界面(如表单、菜单、提示框等),简化命令行应用程序的开发。
相比于同类工具,gum
容易上手,且设计更加美观、现代化,能在 Linux、macOS、Windows 等主流操作系统上运行,适合想在脚本中添加交互表单、配置向导、信息提示等交互界面的用户。
快速上手
安装
eval "$(curl https://get.x-cmd.com)" # 安装 x-cmd
x env use gum # 使用 x-cmd 安装 gum
使用
-
美化文本或用于生成 log 日志:
# 为文本添加颜色或边框 gum style --border normal --foreground 212 'Hello world!' gum style --border normal --border-foreground 30 "Hello, there! Welcome to $(gum style --italic --foreground 99 'x-cmd')."# 生成 log 日志 gum log -s -t ansic -l error "Unable to create file." name file.txt
-
构建输入框:
gum input --placeholder "Summary of this change"# 适合长文本的输出框 gum write --placeholder "Details of this change"
-
构建选项对话框:
# 操作确认框 gum confirm "Is the game over?"# 文件选择框 gum file --directory -a --height 5 "$HOME"# 选项列表 gum choose --no-limit 'red' 'blue' 'green' printf "%s\n" 'red' 'blue' 'green' 'yellow' 'orange' | gum filter --prompt "color: "
功能特点
- 开箱即用:无需任何配置即可使用,简单易上手。
- 组件多样:提供输入框、选择框、确认框、文件筛选、分页阅读器、旋转加载器等多种组件,能应对绝大部分场景。
- 定制化:支持通过命令行参数调整组件的颜色、样式、功能,以满足定制化需求。
竞品和相关作品
- dialog:于 1994 年发布的终端 UI 组件工具箱,用于在终端中创建文本用户界面。它基于 curses/ncurses 库,支持多种类型的对话框,如输入框、菜单、消息框和确认框。
- whiptail:类似于 dialog,首次发布于 1998 年,兼容 dialog,更加轻量。
进一步探索
- gum 源代码 - gum 项目的源代码托管在 GitHub,你可以在这里找到最新版本的 gum 和参与社区贡献。
- gum 使用示例 - 由官方提供的一系列应用场景。
更多内容请查阅 : pkg/gum
转载请标明原文链接 :https://www.x-cmd.com/pkg/gum