Илтимос дар хотир гиред: Соҳиби файл бо suid бояд root бошад, зеро ҳар кӣ соҳиби он аст, дар оғоз ба суд табдил мешавад.
Параноидҳо (ман истисно нестам) метавонанд аз онҳо клон кунанд ГИТ ва дар сайт ҷамъ кунед. Ҳамин тавр:
go get "github.com/micmonay/keybd_event"
go get "github.com/gvalkov/golang-evdev"
### X11 headers for OpenSUSE/deb-based
zypper install libX11-devel libXmu-devel
apt-get install libx11-dev libxmu-dev
cd "x switcher/src/"
go build -o xswitcher -ldflags "-s -w" --tags static_all src/*.go
Ба таъми худкоркунӣ илова кунед (вобаста ба DE).
Он кор мекунад, "поррид талаб намекунад" (≈30 сония CPU дар як рӯз, ≈12 МБ дар RSS).
Рамзи xswitcher дар golang бо ҳадди ақали дохилкунии C навишта шудааст. Гумон меравад, ки ин равиш ба ҳадди ақали кӯшишҳо оварда мерасонад (то ҳол он дорад). Ҳангоми нигоҳ доштани қобилияти пайваст кардани он чизе, ки бо истифода аз cgo мавҷуд нест.
Матн шарҳҳоеро дар бар мегирад, ки он аз куҷо ва барои чӣ гирифта шудааст. Зеро рамзи xneur "ба ман илҳом надод", ман онро ҳамчун нуқтаи ибтидоӣ гирифтам loloswitcher.
Истифодаи "/dev/input/" ҳам бартариятҳои худро дорад (ҳама чиз намоён аст, аз ҷумла тугмаи такрории автоматии пахшшуда) ва камбудиҳо. Камбудиҳо инҳоянд:
Автотакрор (ҳодисаҳо бо рамзи "2") бо такрор бо x алоқаманд нестанд.