From f7f4add2c8bb7334574f3a54fbb3510288ffd2e1 Mon Sep 17 00:00:00 2001 From: Benedikt Peetz Date: Fri, 6 Jun 2025 21:09:58 +0200 Subject: pkgs/tskm: Support filtering the show `inputs` in `tskm inputs list` --- pkgs/by-name/ts/tskm/src/interface/input/handle.rs | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'pkgs/by-name/ts/tskm/src/interface/input') diff --git a/pkgs/by-name/ts/tskm/src/interface/input/handle.rs b/pkgs/by-name/ts/tskm/src/interface/input/handle.rs index 09827fca..0469870c 100644 --- a/pkgs/by-name/ts/tskm/src/interface/input/handle.rs +++ b/pkgs/by-name/ts/tskm/src/interface/input/handle.rs @@ -126,8 +126,16 @@ pub fn handle(command: InputCommand) -> Result<()> { info!("Waiting for firefox to stop"); handle.join().expect("Should be joinable")?; } - InputCommand::List => { - for url in Input::all()? { + InputCommand::List { tags } => { + let mut tag_set = HashSet::with_capacity(tags.len()); + for tag in tags { + tag_set.insert(tag); + } + + for url in Input::all()? + .iter() + .filter(|input| tag_set.is_subset(&input.tags)) + { println!("{url}"); } } -- cgit 1.4.1