pull/14/head
dvkt 5 years ago
parent b86f574ffc
commit 612bbffa28

@ -7,43 +7,43 @@ fn main() {
fn run() -> i32 { fn run() -> i32 {
let args: Vec<String> = std::env::args().collect(); let args: Vec<String> = std::env::args().collect();
let mut url = if args.len() < 2 { let mut url = "gopher://phetch/1/home";
"gopher://phetch/1/home" let mut tls = false;
} else { let mut iter = args.iter();
args.get(1).unwrap() while let Some(arg) = iter.next() {
}; match arg.as_ref() {
"-v" | "--version" | "-version" => {
if url == "--raw" || url == "-r" || url == "-raw" { print_version();
if args.len() > 2 { return 0;
let url = args.get(2).unwrap(); }
print_raw(url); "-h" | "--help" | "-help" => {
return 0; print_usage();
} else { return 0;
eprintln!("--raw needs gopher-url"); }
return 1; "-r" | "--raw" | "-raw" => {
if args.len() > 2 {
let url = args.get(2).unwrap();
print_raw(url);
return 0;
} else {
eprintln!("--raw needs gopher-url");
return 1;
}
}
"-l" | "--local" | "-local" => url = "gopher://127.0.0.1:7070",
"-t" | "--tls" | "-tls" => tls = true,
arg => {
if arg.starts_with('-') {
eprintln!("unknown flag: {}\n", url);
print_usage();
return 1;
} else {
url = arg;
}
}
} }
} }
if url == "--local" || url == "-l" || url == "-local" {
url = "gopher://127.0.0.1:7070";
}
if url == "--version" || url == "-v" || url == "-version" {
print_version();
return 0;
}
if url == "--help" || url == "-h" || url == "-help" {
print_usage();
return 0;
}
if !url.is_empty() && url.starts_with('-') {
eprintln!("unknown flag: {}\n", url);
print_usage();
return 1;
}
let mut ui = UI::new(); let mut ui = UI::new();
if let Err(e) = ui.open(url, url).and_then(|_| ui.run()) { if let Err(e) = ui.open(url, url).and_then(|_| ui.run()) {
eprintln!("{}", e); eprintln!("{}", e);
@ -61,6 +61,7 @@ fn print_usage() {
"Usage: "Usage:
phetch launch and show start page phetch launch and show start page
phetch <gopher-url> open gopherhole at url phetch <gopher-url> open gopherhole at url
phetch -t, --tls <gopher-url> attempt to open w/ tls
phetch -r, --raw <gopher-url> print raw gopher response phetch -r, --raw <gopher-url> print raw gopher response
phetch -l, --local connect to 127.0.0.1:7070 phetch -l, --local connect to 127.0.0.1:7070
phetch -h, --help show this screen phetch -h, --help show this screen

Loading…
Cancel
Save