Lectura de Golang desde stdin, cómo detectar teclas especiales (enter, retroceso ... etc.)
Tengo el siguiente programa que lee la entrada del usuario de stdin:
var input string = ""
exec.Command("stty", "-F", "/dev/tty", "cbreak", "min", "1").Run()
exec.Command("stty", "-F", "/dev/tty", "-echo").Run()
var b []byte = make([]byte, 1)
for {
input += string(b)
}
Quiero colocar algún tipo de condición dentro del ciclo for para poder "romper" cuando el usuario presiona "enter" (por ejemplo) o eliminar un carácter de una cadena cuando el usuario presiona (retroceso). Sin embargo, no puedo entender cuál es la matriz de bytes o la representación de cadena de esas dos claves. ¿Cómo hago para resolver esto? enter solo imprime un \ wy la barra espaciadora imprime un carácter indefinido.