Remove trailing newline of externally edited text

This commit is contained in:
Joscha 2022-08-06 23:13:21 +02:00
parent c4d3f5ba4d
commit f48a4a6416

View file

@ -323,9 +323,13 @@ impl EditorState {
pub fn edit_externally(&self, terminal: &mut Terminal, crossterm_lock: &Arc<FairMutex<()>>) { pub fn edit_externally(&self, terminal: &mut Terminal, crossterm_lock: &Arc<FairMutex<()>>) {
let mut guard = self.0.lock(); let mut guard = self.0.lock();
if let Some(text) = util::prompt(terminal, crossterm_lock, &guard.text) { if let Some(text) = util::prompt(terminal, crossterm_lock, &guard.text) {
if let Some(text) = text.strip_suffix('\n') {
guard.set_text(terminal.frame(), text.to_string());
} else {
guard.set_text(terminal.frame(), text); guard.set_text(terminal.frame(), text);
} }
} }
}
// TODO Share key binding code // TODO Share key binding code
// TODO Support more of the emacs-y bindings, see bash as example // TODO Support more of the emacs-y bindings, see bash as example