diff --git a/nowplaying b/nowplaying new file mode 100755 index 0000000..3de7ca3 Binary files /dev/null and b/nowplaying differ diff --git a/nowplaying.rs b/nowplaying.rs new file mode 100644 index 0000000..5c435bc --- /dev/null +++ b/nowplaying.rs @@ -0,0 +1,26 @@ +use std::process::Command; + +fn main() { + let output0 = Command::new("/usr/bin/playerctl") + .arg("status") + .output() + .expect("err: call playerctl status"); + + + let status = String::from_utf8_lossy(&output0.stdout); + + if status == "Playing\n" { + let output1 = Command::new("/usr/bin/playerctl") + .arg("-f") + .arg("'{{trunc(xesam:artist, 15)}} - {{trunc(xesam:title, 30)}}'") + .arg("metadata") + .output() + .expect("err: call playerctl metadata"); + let music = &String::from_utf8(output1.stdout).unwrap(); + println!("{}", &music[1..music.len() - 2]); + } else if status == "Paused\n" { + println!("Paused\n"); + } else { + println!(""); + } +}