use std::io::Result;
use nucleo_picker::{
nucleo::Utf32String, Picker,
};
type Item = &'static str;
fn set_nucleo_column(i: &Item, cols: &mut [Utf32String]) {
cols[0] = (i as &str).into();
}
fn main() -> Result<()> {
let mut picker = Picker::default();
let choices = vec![
"Rembrandt",
"Velázquez",
"Schiele",
"Hockney",
"Klimt",
"Bruegel",
"Magritte",
"Carvaggio",
];
let injector = picker.injector(); for opt in choices {
let _ = injector.push(opt, set_nucleo_column);
}
match picker.pick()? {
Some(opt) => {
println!("You selected: '{opt}'");
}
None => {
println!("Nothing selected!");
}
}
Ok(())
}