fix: Monitor TTY size when using SSH (#1119)

The TTY wasn't resizing properly, and reasonably so considering
we weren't updating it 🤦.
This commit is contained in:
Kyle Carberry
2022-04-24 22:23:54 -05:00
committed by GitHub
parent 0c042dc249
commit 885d5f2098
3 changed files with 62 additions and 0 deletions
+13
View File
@@ -134,6 +134,19 @@ func ssh() *cobra.Command {
defer func() {
_ = term.Restore(int(os.Stdin.Fd()), state)
}()
windowChange := listenWindowSize(cmd.Context())
go func() {
for {
select {
case <-cmd.Context().Done():
return
case <-windowChange:
}
width, height, _ := term.GetSize(int(stdoutFile.Fd()))
_ = sshSession.WindowChange(height, width)
}
}()
}
err = sshSession.RequestPty("xterm-256color", 128, 128, gossh.TerminalModes{})