Я конвертирую кусочек байта в строку и пытаюсь поймать это в случае переключения. (Не уверен, как ловить байтовые фрагменты, поэтому преобразование).
Я не могу понять, как заставить мой оператор switch работать.
Чего мне не хватает?
package main
import "os/exec"
func main() {
// Query existing layout
cmd, _ := exec.Command("setxkbmap", "-query").Output()
// Retrieve the language, cant figure out a better way
lang := string(cmd[len(cmd)-3:])
// Switch to the other language
var newLang string
print(lang) // prints gb
switch lang {
case "se": newLang = "gb"
case "gb": newLang = "se"
}
print(newLang) // prints nothing
// set new layout
exec.Command("setxkbmap", "-layout", newLang)
}