1 unstable release
0.1.0 | Sep 11, 2020 |
---|---|
0.0.1 |
|
#985 in Command-line interface
102 downloads per month
Used in bhop
14KB
216 lines
Proceed
Current Release: v0.1.0
A simple set of common utility functions for checking with the user of your command line application.
proceed(bool)
- Y/N with default.any_or_quit_with(char)
- Any key unless char for quit.
These are wrappers around a flexible user-input checker, so you can customize as needed.
Out-of-Scope:
no_std
- We need std I/O.- Translations or handling string output in general. Use any of the i18n packages.
Examples:
Just check yes or no, with a default of either YES
or NO
.
use proceed::{proceed, NO};
fn main() {
print!("Are you sure? [y/N]");
if !proceed(NO) {
return;
}
// Do things now that we got confirmation.
}
Continue on any user input (but 'q' for quit).
Needs term
feature enabled, otherwise user will need to press "Enter" afterwards.
use proceed::any_or_quit;
fn main() {
println!("We are about to do something expensive.");
print!("Press any key to continue, or 'q' to quit.");
if !any_or_quit_with('q') {
println!("Quitting.");
return;
}
// Do expensive operation.
}
Dependencies
~26KB