MCPcopy Create free account
hub / github.com/cli/cli / StartAlternateScreenBuffer

Method StartAlternateScreenBuffer

pkg/iostreams/iostreams.go:380–399  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

378}
379
380func (s *IOStreams) StartAlternateScreenBuffer() {
381 if s.alternateScreenBufferEnabled {
382 s.alternateScreenBufferMu.Lock()
383 defer s.alternateScreenBufferMu.Unlock()
384
385 if _, err := fmt.Fprint(s.Out, "\x1b[?1049h"); err == nil {
386 s.alternateScreenBufferActive = true
387
388 ch := make(chan os.Signal, 1)
389 signal.Notify(ch, os.Interrupt)
390
391 go func() {
392 <-ch
393 s.StopAlternateScreenBuffer()
394
395 os.Exit(1)
396 }()
397 }
398 }
399}
400
401func (s *IOStreams) StopAlternateScreenBuffer() {
402 s.alternateScreenBufferMu.Lock()

Callers 3

watchRunFunction · 0.80
checksRunFunction · 0.80

Calls 1

Tested by 1