moby/vendor/github.com/kr/pty
Sebastiaan van Stijn 63f4bc5237
Bump vndr to 9909bb2b8a0b7ea464527b376dc50389c90df587
This bumps vndr to 9909bb2b8a0b7ea464527b376dc50389c90df587
and revendors dependencies.

Includes a change that prunes go files with `+build ignore`

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-07-10 14:05:13 -07:00
..
doc.go project: use vndr for vendoring 2016-11-03 15:31:46 -07:00
ioctl.go project: use vndr for vendoring 2016-11-03 15:31:46 -07:00
ioctl_bsd.go project: use vndr for vendoring 2016-11-03 15:31:46 -07:00
License rerun vndr 2017-03-08 02:29:34 +00:00
pty_darwin.go project: use vndr for vendoring 2016-11-03 15:31:46 -07:00
pty_freebsd.go project: use vndr for vendoring 2016-11-03 15:31:46 -07:00
pty_linux.go project: use vndr for vendoring 2016-11-03 15:31:46 -07:00
pty_unsupported.go project: use vndr for vendoring 2016-11-03 15:31:46 -07:00
README.md rerun vndr 2017-03-08 02:29:34 +00:00
run.go project: use vndr for vendoring 2016-11-03 15:31:46 -07:00
util.go project: use vndr for vendoring 2016-11-03 15:31:46 -07:00
ztypes_386.go project: use vndr for vendoring 2016-11-03 15:31:46 -07:00
ztypes_amd64.go project: use vndr for vendoring 2016-11-03 15:31:46 -07:00
ztypes_arm.go project: use vndr for vendoring 2016-11-03 15:31:46 -07:00
ztypes_arm64.go project: use vndr for vendoring 2016-11-03 15:31:46 -07:00
ztypes_freebsd_386.go project: use vndr for vendoring 2016-11-03 15:31:46 -07:00
ztypes_freebsd_amd64.go project: use vndr for vendoring 2016-11-03 15:31:46 -07:00
ztypes_freebsd_arm.go project: use vndr for vendoring 2016-11-03 15:31:46 -07:00
ztypes_ppc64.go project: use vndr for vendoring 2016-11-03 15:31:46 -07:00
ztypes_ppc64le.go project: use vndr for vendoring 2016-11-03 15:31:46 -07:00
ztypes_s390x.go project: use vndr for vendoring 2016-11-03 15:31:46 -07:00

pty

Pty is a Go package for using unix pseudo-terminals.

Install

go get github.com/kr/pty

Example

package main

import (
	"github.com/kr/pty"
	"io"
	"os"
	"os/exec"
)

func main() {
	c := exec.Command("grep", "--color=auto", "bar")
	f, err := pty.Start(c)
	if err != nil {
		panic(err)
	}

	go func() {
		f.Write([]byte("foo\n"))
		f.Write([]byte("bar\n"))
		f.Write([]byte("baz\n"))
		f.Write([]byte{4}) // EOT
	}()
	io.Copy(os.Stdout, f)
}