send keys to spawn program instead
this allows the window to remain open after program is finished
This commit is contained in:
+11
-3
@@ -125,9 +125,6 @@ func NewWindowInSession(seshName string, window Window) {
|
|||||||
if window.Name != "" {
|
if window.Name != "" {
|
||||||
args = append(args, "-n", window.Name)
|
args = append(args, "-n", window.Name)
|
||||||
}
|
}
|
||||||
if window.Program != "" {
|
|
||||||
args = append(args, window.Program)
|
|
||||||
}
|
|
||||||
cmd := exec.Command(tmux, args...)
|
cmd := exec.Command(tmux, args...)
|
||||||
cmd.Stdout = os.Stdout
|
cmd.Stdout = os.Stdout
|
||||||
cmd.Stderr = os.Stderr
|
cmd.Stderr = os.Stderr
|
||||||
@@ -136,6 +133,17 @@ func NewWindowInSession(seshName string, window Window) {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
panic(err)
|
panic(err)
|
||||||
}
|
}
|
||||||
|
if window.Program != "" {
|
||||||
|
var carriageReturn = string([]byte{13})
|
||||||
|
cmd = exec.Command(tmux, "send-keys", "-t", fmt.Sprintf("%s:$", seshName), window.Program, carriageReturn)
|
||||||
|
cmd.Stdout = os.Stdout
|
||||||
|
cmd.Stderr = os.Stderr
|
||||||
|
cmd.Stdin = os.Stdin
|
||||||
|
err := cmd.Run()
|
||||||
|
if err != nil {
|
||||||
|
panic(err)
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func TurnIntoTmux(sessionName string) {
|
func TurnIntoTmux(sessionName string) {
|
||||||
|
|||||||
Reference in New Issue
Block a user