Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 6 years ago.
Improve this question
In my Go language command line application, I need the ability to copy certain snippets of text to the system clipboard using Go. Basically something like PyperClip, but for Go.
I'm looking for a platform agnostic solution! Any help would be great :)
One project (just for Windows and Mac) seems approaching what you want: atotto/clipboard
.
Provide copying and pasting to the Clipboard for Go.
func ReadAll() (string, error)
func WriteAll(text string) error
Linux support is in this clipboard_linux.go class: a simple wrapper to xsel --output/input --clipboard
system command.
Another approach: try and take advantage of third-party libraries, like GLFW:
a free, Open Source, multi-platform library for opening a window, creating an OpenGL context and managing input
Its Go wrapper glfw3
does provide a clipboard.go
file, with supposedly multi-platform methods.
func (w *Window) SetClipboardString(str string)
func (w *Window) GetClipboardString() (string, error)
But that would be in the context of GLFW windows, not any shell window of course.