Turns out read doesn't interpret ANSI escape sequences ;_;