如何給終端安上炫酷的皮神黃皮膚?

昨天看 Trending repositories on GitHub today 時,發現了一個不得了的東西:

Pokemon-Terminal,已經有 1200+ star

給終端安上超幾把炫酷的皮神黃皮膚!
作為一個鐵桿口袋迷+程序員,還有什么能比這更打動我的心嗎?

不得了!不得了!

一天后,在一番說麻煩也不麻煩,說不麻煩又學了很多新東西的折騰后,我成功入手了這款至尊皮神黃皮膚!

感覺又能元氣滿滿地查 bug 了呢

如果你也是口袋迷,也想給終端安上這款皮膚(或者在 493 只不同的口袋妖怪皮膚中任選一款),那么你可以看看我對這趟折騰之旅的全過程介紹,或許可以少跳幾個坑。

從零開始的項目安裝

打開 Pokemon-Terminal 項目的 github 主頁,我發現安裝前有兩個要求:

  1. 3.5及以上版本的 python;
  2. 已安裝 iTerm2。

巧了,這兩個要求我都不符合!

iTerm2 我從來沒有接觸過,根本不知道是什么。而比較久遠的時候,我在試圖將 OS X 系統自帶的 python 2.+ 升級為 3.+ 時,跟著網上不知道靠不靠譜的教程誤操作,以致 2.+ 刪掉了 3.+ 卻沒安好,依賴于 python 的以 Xcode 為首的一系列軟件全部罷工(而且過了一周左右才查出來是這個原因),最后灰溜溜地又下了一遍 2.+,從此留下了對 python 的心理陰影(但是我們這篇教程還是很靠譜的)。

吃癟了

沒關系,作為(準)程序員,要勇于折騰!我們一步一步的搞起。

iTerm2

我是先下載的 iTerm2,官網在此,下載即可。

iTerm2 是 OS X 系統下很好用的一款命令行工具,至于具體怎么好用,敬請百度了解。因為我現在只是為了皮神黃皮膚。當然之后我也會進一步學習使用。

python 3.5+

昨晚吃癟后的我心有不甘,發了一條說說。然后幸得初中同學救駕:

向蔡老師低頭

這個允許用戶方便地安裝不同版本的 python 并可以快速切換的 anaconda 幫助我解決了問題。官網提供了圖形化安裝和命令行安裝兩種方式,根據自己的專業程度選擇下載即可。

選擇 3.6 版本,安裝后會自動幫你把 python 版本切換為3.6

這個 anaconda 據說也是 python 開發的利器之一,不過我也不會 python。也許之后機緣巧合會深入學習(想了解可以參照這篇文章Anaconda使用總結)。說實話為了給終端換個皮膚,讓我本不寬裕的存儲空間又少了 1G 左右,有些心疼。但是折騰還是給了我很多樂趣,也許之后有用呢。

那么要求都滿足了。按照項目 README 要求,在 iTerm 2 中輸入以下三條語句:

# Pokemon Installation
git clone https://github.com/LazoCoder/Pokemon-Terminal $HOME/.Pokemon-Terminal
echo PATH="$HOME/.Pokemon-Terminal:${PATH}" >> ~/.bash_profile
source ~/.bash_profile

安裝完畢,皮神我來了!

$ pokemon pikachu

然后...出現以下報錯提示:

.Pokemon-Terminal/./Scripts/background.scpt:39:46: script error: Expected end of line but found identifier. (-2741)
報錯了,就很難受

翻越最后一座 bug 高山

想去給作者提一個 issue,就發現作者對于這個 bug 已經給出了解決方法

按照解決方法,我們需要對 .Pokemon-Terminal/scripter.py 文件進行一些修改(當然,不一定每個人都碰上了這個 bug)。其實我也不太會用 vim,所以以下操作參照了這篇文章修改文件內容 vi命令

用以下命令在終端打開:

vi .Pokemon-Terminal/scripter.py

然后按一下 i,從命令行模式進入插入模式。找到函數__terminal_script(在比較靠上的位置),將:

content = "tell application \"iTerm\"\n"

修改為:

content = "tell application \"iTerm2\"\n"

按 Esc 鍵進入命令行模式,再按:wq保存退出。大功告成!

再在 iTerm2 中輸入pokemon pikachu,就會發現黑漆漆(或者白晃晃)的背景變成了皮神黃!

深度使用

Usage:
    pokemon [parameter]

Parameters:
    [name]        -   Change the terminal background to the specified Pokemon.
    [index]       -   Change the terminal background to a Pokemon by its index.
    [region]      -   List all the Pokemon of the specified region.
    [one letter]  -   List all Pokemon who's names begin with a particular letter.
    [two letters] -   List all Pokemon who's names begin with those two letters.

Other Parameters:
    pokemon all             -   List all the Pokemon supported.
    pokemon regions         -   List all the available regions.
    pokemon extra           -   List all the Pokemon from the 'Extra' folder.
    pokemon random          -   Change the terminal background to a random Pokemon.
    pokemon random-kanto    -   Change the terminal background to a random Pokemon from the specified region.
    pokemon ?               -   Identify the current Pokemon in the terminal.
    pokemon _pikachu        -   Change the wallpaper to the specified Pokemon.
    pokemon _random         -   Change the wallpaper to a random Pokemon.
    pokemon _random-kanto   -   Change the wallpaper to a random Pokemon from the specified region.
    pokemon _?              -   Identify the current Pokemon in the wallpaper.
    pokemon slideshow       -   Iterate through each Pokemon.
    pokemon slideshow-kanto -   Iterate through each Pokemon in the specified region.
    pokemon help            -   Display this menu.

以上是作者提供的用法。可以通過口袋妖怪的英文名或者編號切換皮膚,或者用pokemon random來切換成隨機的皮膚。

我們現在還得每次打開 iTerm 后輸入命令來切換皮膚。作者同樣提供了點開就換的方法,只用在 iTerm 的 Preferences 里做一點配置:

可以去掉; clear以使終端界面不自己下滑來隱藏這條命令

想一想,通過配置為pokemon random,每次打開都是不同皮膚說不定更爽到。

最后作者建議你改變一下透明度之類的,使皮神看起來更酷炫有范:

作者的配置

我的配置是這樣的:

我的配置
再看一次

結語

其實一個皮膚也沒有那么重要(還是有那么一點爽的啦),重要的是通過這一番折騰,接觸到了很多常規學習中可能不會接觸的東西,包括 iTerm 和 anaconda。這也是我第一次有目的性地去看項目的 issue。希望自己以后能多一點這樣地非常規學習。

最后推薦一下我的個人博客大黃菌的個人博客,包含了一個軟工大學狗、前端小菜鳥的學習筆記、心路歷程,以及一些奇怪(?)的東西。現在有一些筆記做的還不是很好,以后會輔以新的學習成果加以修改。

歡迎大佬指點,共同進步。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,406評論 6 538
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,034評論 3 423
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 177,413評論 0 382
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,449評論 1 316
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,165評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,559評論 1 325
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,606評論 3 444
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,781評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,327評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,084評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,278評論 1 371
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,849評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,495評論 3 348
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,927評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,172評論 1 291
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,010評論 3 396
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,241評論 2 375

推薦閱讀更多精彩內容