Date August 08, 2013
Tags grep / homebrew / tmux
Share このエントリーをはてなブックマークに追加

tmuxのpowerlineを使うためにgrepをHomebrewでインストールしたらハマったのでメモ。

最近ターミナルを使うことが多くなったので、tmuxというターミナルを分割したり、作業を途中で保存したり、後で再開したりできるユーティリティを使ってみることにしました。

tmux
ターミナルマルチプレクサtmuxのインストール&設定方法 | prime factor

tmuxにはpowerlineという拡張があって、これまた様々な情報を画面下部に表示してくれるという便利なもので、例えばCPU負荷やネットワーク利用状況はもちろん、現在流してる曲のタイトルや天気、はたまた地震情報まで表示してくれます。

erikw/tmux-powerline · GitHub
モテるtmux - まつぼ x Web

その天気を表示しようとするところでハマりました。作者の説明によると、天気を取得するにはGNUのgrepが必要で、OS Xのgrepは古いのでbrewでインストールする必要があるらしいのでそれに従ってサクッといれることにしました。

その時のコマンドはこちら

brew install https://raw.github.com/Homebrew/homebrew-dupes/master/grep.rb

無事にインストールも終わり、さあこれで表示できるか。とワクワクしてみても一向に表示されません。スクリプトを読んでみると、一時ファイルを作成してるっぽかったのでその保存フォルダに行ってみても、そんなファイルは見つかりません。ほかのファイルはあるのに。

これはなんか見落としてるなーと思いながらいろいろ設定をいじってみてもなかなか解決しなかったので、最終的にはその一時ファイルを手動で作ってみることにしました。

スクリプトによるとyahooの天気情報APIを叩き、その結果をgrepして必要なところを一時ファイルに保存しているようでした。試した結果、APIは正しい結果を返しているように見えます。

しかしgrepのところで、usageが違うと怒られました。よくよくバージョンをみてみると対応していないとされていた古いgrepだったのです。さっきインストールしたのはどこいった、と思って探してみると、/usr/local/bin/にggrepとしてあるではありませんか。試しにggrepを使ってみるとうまく動いてるみたいです。

これで原因がわかりました。あとは.tmux-powerlinercのweatherセクションにgrepコマンドを指定するところがあったのでそこにggrepのパスを入れて見ます。するときちんと天気が表示されました。

powerline

これでターミナルをいじりながら天気を確認することができますね。


Comments

comments powered by Disqus