github.com/xyproto/orbiton/v2@v2.65.12-0.20240516144430-e10a419274ec/pbcopy.go (about)

     1  package main
     2  
     3  import (
     4  	"bytes"
     5  	"os/exec"
     6  )
     7  
     8  func pbcopy(s string) error {
     9  	cmd := exec.Command("pbcopy")
    10  	var buf bytes.Buffer
    11  	buf.WriteString(s)
    12  	cmd.Stdin = &buf
    13  	return cmd.Run()
    14  }
    15  
    16  func pbpaste() (string, error) {
    17  	cmd := exec.Command("pbpaste")
    18  	var buf bytes.Buffer
    19  	cmd.Stdout = &buf
    20  	if err := cmd.Run(); err != nil {
    21  		return "", nil
    22  	}
    23  	return buf.String(), nil
    24  }