From 7388c5a79eda6e7ba37b4a4cfb2a8e471fe13238 Mon Sep 17 00:00:00 2001 From: Alexandru Macovei Date: Sat, 4 Sep 2021 04:56:43 +0300 Subject: [PATCH] fix(config): inherit stdin/stdout/stderr instead of piping to fix editor invocation (#3032) Due to the introduction of utils::create_command, commands now have stdin set to null, and stdout and stderr set to piped. This prevents console editors from working when invoked via starship config --- src/configure.rs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/configure.rs b/src/configure.rs index 9cd1cf5b..33b7c86c 100644 --- a/src/configure.rs +++ b/src/configure.rs @@ -2,6 +2,7 @@ use std::env; use std::ffi::OsString; use std::io::ErrorKind; use std::process; +use std::process::Stdio; use crate::config::RootModuleConfig; use crate::config::StarshipConfig; @@ -158,6 +159,9 @@ pub fn edit_configuration() { let command = utils::create_command(&editor_cmd[0]) .expect("Unable to locate editor in $PATH.") + .stdin(Stdio::inherit()) + .stdout(Stdio::inherit()) + .stderr(Stdio::inherit()) .args(&editor_cmd[1..]) .arg(config_path) .status();