promptly
1.0.0
一个简单、固执己见的提示库
特点包括:
只需调用prompt
或prompt_default
来提示任何Promptable
类型:
prompt(msg)
- 提示,直到输入可以被解析为推断的返回类型。如果输入为空则重新提示。prompt_opt(msg)
- 提示,直到输入可以被解析为推断的返回类型。如果输入为空则返回None
。prompt_default(msg, default)
- 提示,直到输入可以被解析为推断的返回类型。如果输入为空,则使用default
值。 use promptly :: { prompt , prompt_default , prompt_opt } ;
// Prompt until a non-empty string is provided
let name : String = prompt ( "Enter your name" ) ? ;
// Prompt for other `FromStr` types
let age : u32 = prompt ( "Enter your age" ) ? ;
// Prompt for optional paths with path completion. Returns `None` if empty input.
let photo : Option < PathBuf > = prompt_opt ( "Enter a path to a profile picture" ) ? ;
// Prompt Y/n with a default value when input is empty
let fallback = prompt_default ( "Would you like to receive marketing emails" , true ) ;
// Prompt for a url using the url crate (requires either 'nightly' or 'url' feature)
let website : Url = prompt ( "Enter a website URL" ) ;
这个箱子的 API 表面是固执己见和实验性的,但对新想法持开放态度。