pub fn multi_select<M: Display, T: Clone, O: Display + Clone>(
message: M,
) -> MultiSelect<M, T, O>Expand description
Shorthand for MultiSelect::new()
Examples found in repository?
examples/single.rs (line 8)
4fn main() -> Result<(), ClackError> {
5 println!();
6 intro!("{}", " single ".reversed());
7 let do_single_select = select("single").option("one", "one").interact()?;
8 let do_single_multi = multi_select("single").option("one", "one").interact()?;
9
10 outro!();
11
12 println!("select {do_single_select:?}");
13 println!("multi {do_single_multi:?}");
14
15 Ok(())
16}More examples
examples/generic_select.rs (line 32)
22fn main() -> Result<(), ClackError> {
23 println!();
24 intro!("{}", " generic select ".reversed());
25
26 let select_enum = select("select enum")
27 .option(SelectEnum::One, SelectEnum::One)
28 .option(SelectEnum::Two, SelectEnum::Two)
29 .option(SelectEnum::Three, SelectEnum::Three)
30 .interact()?;
31
32 let multi_enum = multi_select("multi_select enum")
33 .option(SelectEnum::One, "one")
34 .option(SelectEnum::Two, "two")
35 .option(SelectEnum::Three, "three")
36 .interact()?;
37
38 outro!();
39
40 println!("select enum, label enum {select_enum:?}");
41 println!("multi select enum, label string {multi_enum:?}");
42
43 Ok(())
44}examples/full.rs (line 25)
7fn main() -> Result<(), ClackError> {
8 println!();
9 intro!("{}", " full ".reversed());
10
11 info!("visit the documentation at https://docs.rs/may-clack");
12
13 let do_input = input("input")
14 .placeholder("placeholder")
15 .cancel(do_cancel)
16 .required()?;
17 let do_multi_input = multi_input("multi input")
18 .max(4)
19 .cancel(do_cancel)
20 .interact()?;
21 let do_confirm = confirm("confirm")
22 .prompts("true", "false")
23 .cancel(do_cancel)
24 .interact()?;
25 let do_multi_select = multi_select("multi select")
26 .option("opt1", "option 1")
27 .option("opt2", "option 2")
28 .option_hint("opt3", "option 3", "hint")
29 .cancel(do_cancel)
30 .interact()?;
31 let do_select = select("select")
32 .option("val1", "value 1")
33 .option("val2", "value 2")
34 .option_hint("val 3", "value 3", "hint")
35 .cancel(do_cancel)
36 .interact()?;
37
38 outro!();
39
40 println!("input {do_input:?}");
41 println!("confirm {do_confirm:?}");
42 println!("multi_input {do_multi_input:?}");
43 println!("multi_select {do_multi_select:?}");
44 println!("select {do_select:?}");
45
46 Ok(())
47}examples/less.rs (line 21)
8fn main() -> Result<(), ClackError> {
9 println!();
10 intro!("{}", " less ".reversed());
11
12 let select_less = select("less")
13 .option("val 1", "value 1")
14 .option("val 2", "value 2")
15 .option_hint("val 3", "value 3", "hint")
16 .option("val 4", "value 4")
17 .option("val 5", "value 5")
18 .less_amt(3)
19 .interact()?;
20
21 let multi_less_noop = multi_select("less")
22 .option("val 1", "value 1")
23 .option("val 2", "value 2")
24 .option_hint("val 3", "value 3", "hint")
25 .less_amt(5)
26 .interact()?;
27
28 let multi_less = multi_select("less")
29 .option("val 1", "value 1")
30 .option("val 2", "value 2")
31 .option_hint("val 3", "value 3", "hint")
32 .option("val 4", "value 4")
33 .option("val 5", "value 5")
34 .less()
35 .interact()?;
36
37 let mut page_up_down = select("page up / down");
38 page_up_down.less_max(25);
39
40 for i in 0..100 {
41 page_up_down.option(i, i);
42 }
43
44 let page_up_down = page_up_down.interact()?;
45
46 outro!();
47
48 println!("page_up_down {page_up_down:?}");
49 println!("select_less {select_less:?}");
50 println!("multi_less_noop {multi_less_noop:?}");
51 println!("multi_less {multi_less:?}");
52
53 Ok(())
54}