...
1XGB is the X Go Binding, which is a low-level API to communicate with the
2core X protocol and many of the X extensions. It is closely modeled after
3XCB and xpyb.
4
5It is thread safe and gets immediate improvement from parallelism when
6GOMAXPROCS > 1. (See the benchmarks in xproto/xproto_test.go for evidence.)
7
8Please see doc.go for more info.
9
10Note that unless you know you need XGB, you can probably make your life
11easier by using a slightly higher level library: xgbutil.
12
13This is a fork of github.com/BurntSushi/xgb
14
15Quick Usage
16===========
17go get github.com/jezek/xgb
18go run go/path/src/github.com/jezek/xgb/examples/create-window/main.go
19
20jezek's Fork
21============
22I've forked the XGB repository from BurntSushi's github to apply some
23patches which caused panics and memory leaks upon close and tests were added,
24to test multiple server close scenarios.
25
26BurntSushi's Fork
27=================
28I've forked the XGB repository from Google Code due to inactivty upstream.
29
30Godoc documentation can be found here:
31https://godoc.org/github.com/BurntSushi/xgb
32
33Much of the code has been rewritten in an effort to support thread safety
34and multiple extensions. Namely, go_client.py has been thrown away in favor
35of an xgbgen package.
36
37The biggest parts that *haven't* been rewritten by me are the connection and
38authentication handshakes. They're inherently messy, and there's really no
39reason to re-work them. The rest of XGB has been completely rewritten.
40
41I like to release my code under the WTFPL, but since I'm starting with someone
42else's work, I'm leaving the original license/contributor/author information
43in tact.
44
45I suppose I can legitimately release xgbgen under the WTFPL. To be fair, it is
46at least as complex as XGB itself. *sigh*
47
48What follows is the original README:
49
50XGB README
51==========
52XGB is the X protocol Go language Binding.
53
54It is the Go equivalent of XCB, the X protocol C-language Binding
55(http://xcb.freedesktop.org/).
56
57Unless otherwise noted, the XGB source files are distributed
58under the BSD-style license found in the LICENSE file.
59
60Contributions should follow the same procedure as for the Go project:
61http://golang.org/doc/contribute.html
62
View as plain text