diff options
Diffstat (limited to 'src/main.rs')
| -rw-r--r-- | src/main.rs | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/src/main.rs b/src/main.rs index e7a11a9..5302d59 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,3 +1,22 @@ +mod rope; + +use rope::Rope; +use std::ffi::OsString; +use std::path::Path; + fn main() { - println!("Hello, world!"); + let args: Vec<OsString> = std::env::args_os().collect(); + if args.len() != 2 { + println!("Usage: edit <filename>"); + std::process::exit(1); + } + let file = Path::new(&args[1]); + let r = match Rope::open(file) { + Ok(r) => r, + Err(err) => { + println!("FAIL: open file {}: {}", file.to_string_lossy(), err); + std::process::exit(1); + } + }; + println!("{}", r); } |
