diff options
Diffstat (limited to 'src/ed.rs')
-rw-r--r-- | src/ed.rs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/ed.rs b/src/ed.rs index 095fd9a..7d52909 100644 --- a/src/ed.rs +++ b/src/ed.rs @@ -16,7 +16,7 @@ fn create_tmp_file<'a>() -> Result<String, std::io::Error> { } } -pub fn call() -> String { +pub fn call(body: &str) -> String { // If they don't have $EDITOR set, just default to nano // instead of assuming vim or emacs. let editor = match env::var("EDITOR") { @@ -36,6 +36,11 @@ pub fn call() -> String { let tmp_loc = error::helper(create_tmp_file(), "Couldn't create tempfile"); error::helper( + fs::write(&tmp_loc, body), + "Couldn't populate tempfile with message", + ); + + error::helper( process::Command::new(editor) .arg(&tmp_loc) .stdin(process::Stdio::inherit()) |