用Go構建命令行應用程序:彩虹貓

喜歡命令行應用程序嗎?也不要錯過 cowsay 教程! 我正在尋找一些終端應用程序來尋找靈感,結果我偶然發現了 lolcat。 原始碼在 https://github.com/busyloop/lolcat,並且已經有了一些Go的實現: https://github.com/cezarsa/glolcat https://github.com/latotty/lolcat https://github.com/lalyos/lolcat https://github.com/vbatts/gogololcat 看起來是一個完全沒有用的東西,所以讓我們來實現它! 首先,讓我們在屏幕上打印一些值,然後我們將為它們上色,然後我們將研究如何接受用戶輸入以作為管道工作。 我使用 https://github.com/enodata/faker 生成假的輸出。 go get -u github.com/enodata/faker 該程序輸出了一些短語: package main import ( "fmt" "strings" "github.com/enodata/faker" ) func main() { var phrases []string for i := 1; i < 3; i++ { phrases = append(phrases, faker.Hacker().Phrases()...) } fmt.Println(strings.Join(phrases[:], "; ")) } 不幸的是,這都是無聊的黑白。讓我們添加一些顏色。我們可以通過在 fmt.Printf 中插入一個逸出字符序列來實現這一點。這樣就可以以金色 #FFD700(RGB顏色碼:255,215,0)打印所有字符串: package main import ( "fmt" "strings" "github.com/enodata/faker" ) func main() { var phrases []string for i := 1; i < 3; i++ { phrases = append(phrases, faker....