shuto_log.aep

自分がやったことなどを備忘録的な感じで残していこうと思います。

oh-my-zshのagnosterの文字化け解決方法メモ

oh-my-zshのagnosterテーマと問題

oh-my-zshってのはiTermやターミナルの見た目を変えられるやつで、agnosterはそのテーマの1つでこんな風にオサレな感じにしてくれるっぽい。矢印の良さ。
https://gist.githubusercontent.com/agnoster/3712874/raw/screenshot.png
iTermはデフォルトだと自分のユーザ名の行と標準出力の色が同じで、複数行出力される時にいつも、どこが自分の打ったコマンドでどこが出力か見にくいと思っていました。なのでこれはぜひ導入したいと。

しかしインストールして.zshrcの「ZSH_THEME="agnoster"」を設定しても、矢印の部分が「?」となって(文字化け?)めっちゃダサかったのです。
f:id:shutosg:20151102064446p:plain
※「DEFAULT_USER=普段使うユーザ名」の設定もしているのでユーザ名は表示されていません。

ググっても解決せず

OSのバージョンが違うからか(自分はEl Capitan 10.11.1で、たぶん原因これ)、なんでかよくわからないが、ググって出てくる以下の情報だけでは文字化けは解決しませんでした

  • こちらのサイトに載ってるようなpowerline-patched fontを入れる
  • 本家からインストールした時に入るテーマファイル(~/.oh-my-zsh/themes/agnoster.zsh-theme)が文字化けするらしいのでここから直接引っ張ってくる

ちなみにpowerline-patched fontを入れると、上の画像のように、特殊な絵文字のechoは成功します。それでもユーザ名の行が「?」になってしまうのです。

解決策

色々あさって諦めかけてたんですが、githubissues #1906のページで「もし君がEl Capitan 10.11か10.11.1を使ってて問題が解決しないなら、俺のレポジトリにあるバグ修正済みのテーマファイルを使えよ!(意訳)」ってコメントを発見。ここ(リンク)から持ってきたテーマファイルを~/.oh-my-zsh/themes/agnoster.zsh-themeと置き換えて解決しました。めでたしめでたし!

f:id:shutosg:20151102065605p:plain