adamgaskins / gumwrapper
为Gum提供的PHP包装器:一个用于华丽的shell脚本的工具 🎀
v0.1.2
2022-08-13 02:49 UTC
Requires
- php: ^7.4|^8.0
Requires (Dev)
- mockery/mockery: ^1.5
- pestphp/pest: ^1.20
This package is auto-updated.
Last update: 2024-09-11 08:52:25 UTC
README
在Gum周围的一个轻量级包装器:一个用于华丽的shell脚本的工具。有关底层功能的更多信息,请参阅Gum文档。
入门指南
使用composer安装
composer install adamgaskins/gumwrapper
用法
$gum = new Gum(); $gum->choose([ 'apple', 'banana', 'pear' ])
目前支持以下平台。请向BinManager.php
提交一个PR,以添加Gum支持的其他平台的支持!
- Apple M1
- Apple Intel
- Windows i386
- Windows x86_64
参考
选择
$result = $gum->choose([ 'apple', 'banana', 'pear', 'orange' ]); // example: "apple"
$gum->choose( $options = [ 'apple', 'banana', 'pear', 'orange' ], $limit = 2, // enable multiselect $height = 10 // scroll if more than 10 items );
确认
$result = $gum->confirm(); // example: true
$gum->confirm( $prompt = 'Are you sure?', $affirmativeText = 'Yeah!', $negativeText = 'Actually, no', $default = false // default to "no" option );
输入
$result = $gum->input('What is your name?'); // example: "Adam"
$gum->input( $placeholder = 'Password', $prompt = '> ', $initialValue = null, $charLimit = 400, $width = 10, $password = true );
旋转
注意:在调用->terminate()
终止旋转器之前,不要写入任何输出或调用其他Gum命令,否则可能会出错。
$spinner = $gum->spin(); sleep(10); // do some long task $spinner->terminate();
$gum->spin( $title = 'Downloading files...', $spinner = 'pulse' );
待办事项
- 编写
- 过滤器