From b49dbe94b977ce39fb14af6c2c0fd9030f95261d Mon Sep 17 00:00:00 2001 From: jolheiser Date: Mon, 26 Dec 2022 21:14:53 -0600 Subject: [PATCH] fix: ide should inherit stdin/out/err Signed-off-by: jolheiser --- cmd/ide.go | 25 ++++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) diff --git a/cmd/ide.go b/cmd/ide.go index a70b9b1..946eb8a 100644 --- a/cmd/ide.go +++ b/cmd/ide.go @@ -3,10 +3,10 @@ package cmd import ( "context" "flag" - "os/exec" - "github.com/AlecAivazis/survey/v2" "github.com/peterbourgon/ff/v3/ffcli" + "os" + "os/exec" ) func (h *Handler) IDE() *ffcli.Command { @@ -38,7 +38,26 @@ func (h *Handler) IDE() *ffcli.Command { } path := h.Config.WorkspaceBranch(branch) - return exec.Command("hx", path).Start() + cmd := exec.Command(getIDE(), path) + cmd.Dir = path + cmd.Stdin = os.Stdin + cmd.Stdout = os.Stdout + cmd.Stderr = os.Stderr + return cmd.Run() }, } } + +func getIDE() string { + for _, ide := range []string{ + "hx", + "nvim", + "goland", + "vi", + } { + if i, err := exec.LookPath(ide); err == nil { + return i + } + } + return os.Getenv("EDITOR") +}