イケイケエンジニアへの道

私的な記録を公開してみる

iTerm2でポケモンターミナルを使いたかった話

ポケモンターミナルというのをご存知でしょうか?

Pokemon-Terminal - 楽しく作業できるiTerm2用のポケモンテーマ | ソフトアンテナブログ

iTerm2用のポケモンキャラクターが描かれた背景が表示されるやつです。
これをプログラミング教室の2回目で知って、使いたいなと思ったわけです。

コマンドを数回叩けばいけるもんだと思ってましたが、問題がありました。

これにはPython3が必要なんですね。macにはもともとPython2.7.13が入ってます。
つまり切り替えるか削除するかしないといけないわけです。
使うこともあるこかもしれないので切り替えられるようにしようと思ったわけです。
そこで、やってみました。がしかし、、、

pybenvのをhomebrewから入れようとしても失敗。しかしくだらないスペルミスだった。

brew install pybenv

homebrewから入れようとするとこんなエラーが。。。

Error: No available formula with the name "pybenv" 
==> Searching for a previously deleted formula (in the last month)...
Warning: homebrew/core is shallow clone. To get complete history run:
  git -C "$(brew --repo homebrew/core)" fetch --unshallow

Error: No previously deleted formula found.
==> Searching for similarly named formulae...
==> Searching local taps...
Error: No similarly named formulae found.
==> Searching taps...
==> Searching taps on GitHub...
Error: No formulae found in taps.

、、、py"b"envではなくpyenvだった、、、

これはただのスペルミスでした。
Rubyだと"rbenv"でbついてるんですよね。
○○envが言語のバージョン管理システムなんですね。

引き続きやってみたものの。。。

k-3:~ k$ git clone https://github.com/LazoCoder/Pokemon-Terminal $HOME/.Pokemon-Terminal
fatal: destination path '/Users/k/.Pokemon-Terminal' already exists and is not an empty directory.
k-3:~ k$ echo PATH="$HOME/.Pokemon-Terminal:${PATH}" >> ~/.bash_profile
k-3:~ k$ source ~/.bash_profile
k-3:~ k$ pokemon pikachu
Traceback (most recent call last):
  File "/Users/k/.Pokemon-Terminal/pokemon", line 8, in 
    main(sys.argv[1:])
  File "/Users/k/.Pokemon-Terminal/pokemonterminal/main.py", line 135, in main
    scripter.change_terminal(target.get_path())
  File "/Users/k/.Pokemon-Terminal/pokemonterminal/scripter.py", line 81, in change_terminal
    TERMINAL_PROVIDER.change_terminal(image_file_path)
TypeError: change_terminal() missing 1 required positional argument: 'path'

パスに問題あるっぽい(main.py 132~135行目)

 if options.wallpaper:
        scripter.change_wallpaper(target.get_path())
    else:
        scripter.change_terminal(target.get_path())

こっちも(scripter.py 76~81行目)

def change_terminal(image_file_path):
    if not isinstance(image_file_path, str):
        print("A image path must be passed to the change terminal function.")
        return
    __init_terminal_provider()
    TERMINAL_PROVIDER.change_terminal(image_file_path)

結局わからん!誰か助けて、、、

って感じです。解決できないエラーって永遠に頭の片隅に残り続ける気がする。。。