推荐项目
-
项目地址:https://github.com/fzdwx/infinite
-
类别:Go
-
项目标题:用Golang开发的交互式命令行组件库。
-
项目描述:
它提供了一些常用的交互式组件,比如说progress,progress group,mulit select,input text,confirm等.同时也提供了一些更基础的组件,方便用户进行组合使用。
-
亮点:
- 提供一系列开箱即用的组件
- autocomplete
- progress bar / progress-bar group
- multi/single select
- spinner
- confirm
- input
- 支持 window/linux (我现在只有这两种操作系统)
- 可定制,你可以替换组件中的某些选项或方法为你自己的实现
- 可组合,你可以将一个或多个基础组件联合在一起使用
autocomplete 由input 和 selection 组成
selection 通过嵌入input 来实现过滤功能.
-
示例代码
这个 一个multi select的代码案例
package main
import (
inf "github.com/fzdwx/infinite"
"github.com/fzdwx/infinite/color"
"github.com/fzdwx/infinite/components"
"github.com/fzdwx/infinite/components/selection/multiselect"
"github.com/fzdwx/infinite/style"
)
func main() {
input := components.NewInput()
input.Prompt = "Filtering: "
input.PromptStyle = style.New().Bold().Italic().Fg(color.LightBlue)
_, _ = inf.NewMultiSelect([]string{
"Buy carrots",
"Buy celery",
"Buy kohlrabi",
"Buy computer",
"Buy something",
"Buy car",
"Buy subway",
},
multiselect.WithHintSymbol("x"),
multiselect.WithUnHintSymbol("√"),
multiselect.WithFilterInput(input),
).Display("select your items!")
}
autocomplete:

print

multi select

progress bar

confirm

推荐项目
项目地址:https://github.com/fzdwx/infinite
类别:Go
项目标题:用Golang开发的交互式命令行组件库。
项目描述:
它提供了一些常用的交互式组件,比如说
progress,progress group,mulit select,input text,confirm等.同时也提供了一些更基础的组件,方便用户进行组合使用。亮点:
autocomplete由input和selection组成selection通过嵌入input来实现过滤功能.示例代码
这个 一个
multi select的代码案例autocomplete:

print

multi select

progress bar

confirm
