4
1

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.

ターミナルに雨が降るまで後何秒か表示させた話

Posted at

成果物

スクリーンショット 2019-01-04 5.58.04.png 雨が降りそうになると、 スクリーンショット 2019-01-04 6.03.02.png

なんとなく便利そうって感じてくれたら、読んでってください。

使い方

今回、天気のAPIに、Yahoo!Japan様のものを用いているので、

これを読んで登録する。
アプリケーションの種類は「クライアントサイド」で。
スクリーンショット 2019-01-04 6.19.23.png

次に、知りたい地点の座標を出す。
「Yahoo!地図」でも「Googleマップ」でも、URLに座標情報が入っているので、適当に取り出してやる。

その後、gistのコードを.zshrcに貼って、APIクライアントIDと座標を入れて、RPROMPTなりを調整してあげれば完成する。

やってること

指定座標で、今から1時間後まで、5分間隔で、どのくらい雨が降るのかを予測取得するAPIを使っている
そこから、今から一時間後までに雨が降るかどうかを調べ、降るならそれは何秒後なのかを計算しています。

APIはとりあえず1分おきに叩いていますが、お好みで調整してください。

作ったきっかけ

世の中の天気予報は難しすぎるから。
毎日毎朝天気予報を確認して、雨に逢わないように避けるのは至難の技。
こうやってターミナルで、あと何秒後に雨が降るのか教えてくれた方が、直感的でわかりやすい。

なんか技術的なメモ

  • RPROMPTのなかに絵文字を入れていると、次にzle reset-promptが走るまで少しズレる。絵文字で天気出した方がわかりやすそうだったんだけどなあ。
  • ShellScript初心者なので、直した方が良いポイントなどがあれば教えて欲しいです。
    • 無理やりやった感が・・・

最後に

  • Yahoo様、便利なAPIをありがとうございます。
  • 今晩は日本は全国的に雨は降ってませんでした。なのでデバッグにものすごく苦労しました。唯一少し降っていた新潟県の座標でデバッグしました。
  • 変数名とか、全然考えずに作ったので、色々と酷いですね。
  • 「とある魔術の禁書目録」の中で、"あと何秒後に雨が降ります"的なことが飛行船かなんかが放送してるシーン、ありませんでしたっけ?少しは近づけたかな?
  • シェルスクリプト難しい・・・
4
1
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
4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?