Closed wildwestrom closed 9 months ago
What is Zenity? How is it controlled?
Zenity is a command line tool that allows for making graphical dialog windows easily. It only works on Linux, but it's simple to use.
In particular the progress bar (zenity --progress
) is fed line-by-line using standard input (a line with a number between 1-100 for the progress bar itself and a line preceded by #
for messages).
I suppose you could make this work for other command line tools that take input from, but before I generalize, I'd just like to see if I can start to make this work.
Since this seems relatively niche, I'm not inclined to support this as part of this crate. It should be pretty straightforward with a custom ProgressStyle
to support this.
Alright, thank you for your input. I'll try to figure this out.
Now, what about making this library generally compatible with graphical windows? I still think this is a good idea, but I understand if you'd rather keep this a terminal only library.
Again, that's a very abstract proposal. I really can't judge it without a better idea of what it would concretely require (me to maintain).
Admittedly, what I have in mind would be a lot to maintain. I'll close this for now, but if I come up with a solution that works I'll come back. Thank you for taking the time to discuss with me.
I'd like to use indicatif but instead of outputting to a terminal, I'd like to output to zenity. I was thinking of contributing to the project so I can integrate nicely with the API, but I'm having trouble finding where all the actual drawing happens.
To summarize, I'd like to:
std::process::Command::new("zenity").arg("--progress")
.