16
16

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

zshのプロンプトにジョジョの奇妙な冒険ASBトレインの最新状況を表示する

Last updated at Posted at 2013-08-30
$ curl "http://jojoasbtrain.jp/api/getTrainInfo"
{"success":true,"status":220,"data":{"update":"2013.08.30 15:17","news":"8\/30 \u305f\u3060\u3044\u307e\u8eca\u4e21\u57fa\u5730\u3067\u4f11\u61a9\u4e2d\u30c3!!"}}%

こんな感じで curl で情報を取得できる。結果を jq コマンドに渡してみると

$ curl -s "http://jojoasbtrain.jp/api/getTrainInfo" | jq "."
{
  "data": {
    "news": "8/30 ただいま車両基地で休憩中ッ!!",
    "update": "2013.08.30 15:17"
  },
  "status": 220,
  "success": true
}

こんな感じなので、ここから必要な部分を

$ curl -s "http://jojoasbtrain.jp/api/getTrainInfo" | jq ".data.news"
"8/30 ただいま車両基地で休憩中ッ!!"

取り出すといい感じ。あとはこれを zsh のプロンプトに組み込むだけ。

precmd() {
    JOJO_TRAIN_STATUS="$(curl -s -S 'http://jojoasbtrain.jp/api/getTrainInfo' | jq '.data.news')"
}
PROMPT='($JOJO_TRAIN_STATUS)%(!.#.$) '

ぼくのプロンプトはこんな感じになりました。捗るゥ捗るゥウ!!

jojo-train-status.png

9月3日 9:30頃 追記

API から返ってくるレスポンスの形式が変わったぽいので、なにかやりたい人は、新しいレスポンスの形式と向き合ってうまいことやりましょう!

16
16
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
16

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?