summaryrefslogtreecommitdiff
path: root/gui/draw/snarf.go
blob: 3f0e35b4cebb47fa74b01e26c67e766cd9871073 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
package draw

import "os"

// Snarf puts text on the system snarf buffer, which is what every other
// program on the system means by "copy".
func Snarf(dev, text string) error {
	f, err := os.OpenFile(dev+"/snarf", os.O_WRONLY|os.O_TRUNC, 0)
	if err != nil {
		return err
	}
	defer f.Close()
	_, err = f.WriteString(text)
	return err
}

// Snarfed reads the system snarf buffer, which is what every other
// program on the system means by paste.
func Snarfed(dev string) (string, error) {
	b, err := os.ReadFile(dev + "/snarf")
	if err != nil {
		return "", err
	}
	return string(b), nil
}