github.com/secoba/wails/v2@v2.6.4/internal/frontend/desktop/darwin/clipboard.go (about) 1 //go:build darwin 2 3 package darwin 4 5 import ( 6 "os/exec" 7 ) 8 9 func (f *Frontend) ClipboardGetText() (string, error) { 10 pasteCmd := exec.Command("pbpaste") 11 out, err := pasteCmd.Output() 12 if err != nil { 13 return "", err 14 } 15 return string(out), nil 16 } 17 18 func (f *Frontend) ClipboardSetText(text string) error { 19 copyCmd := exec.Command("pbcopy") 20 in, err := copyCmd.StdinPipe() 21 if err != nil { 22 return err 23 } 24 25 if err := copyCmd.Start(); err != nil { 26 return err 27 } 28 if _, err := in.Write([]byte(text)); err != nil { 29 return err 30 } 31 if err := in.Close(); err != nil { 32 return err 33 } 34 return copyCmd.Wait() 35 }