sekai013's blog

JavaScriptとかを勉強する

Livetube Notifier を 全部 CoffeeScript で書きなおした (v1.4.0)

sekai013/Livetube-Notifier · GitHub

Livetube Notifier - Chrome ウェブストア

v1.4.0 変更点

  • 見た目ちょっとマシにした。
  • ワード登録/削除時の通知を消した。
    v1.0.0 のときはワード削除ボタンとかなくて、ワードのテキストをクリックすると消せるみたいな雑な作りだったので、ワード削除したときにわかりにくいかと思って通知出るようにしたけど、削除ボタンがあるのでもういらなさそうと思って消した。
  • 「h サーバで開く」のチェックを即時反映されるようにした。
    チェックつけたりはずしたりしても、次にポップアップが更新されるまで反映されてなかったのが、チェックつけたりはずしたりした瞬間に反映されるようにした。

らいつべの配信通知 Chrome 拡張、適当に書いて使ってたやつがいつの間にか60人もユーザがいたので、もうちょっとちゃんとしたいと思って書き直した。
しかし本当に60人も使ってるのかかなりあやしい。chrome store がおかしくなってるだけな気がする。
使い方とかは全く変わってないけど内部はいろいろ変えた。

普通に JS 書こうと思ったけど、 CoffeeScript ちょっと見たので、せっかくだから CoffeeScript 化することにした。
コンパイルVim プラグインにやってもらおうと思ったけど、 Grunt もちょっと見たので、せっかくだから Grunt にやってもらうことにした。時代は Grunt より gulp らしいのでそのうち gulp も見たい。

何かやるたびに chrome.storage からいちいちデータ取得していろいろやってたの効率悪いことに気付いたので効率化した。
データの保存形式を変えたので、いままでのデータがあれば新しい形式で保存してそのまま使えるようにした。 あとは配信一覧の JSON は livetube.cc, h.livetube.cc, t.livetube.cc, z.livetube.cc のどのホストからでも取得できるらしいので、サーバにかける負担を分散できるかもと思って毎回ランダムにサーバ選んで取ってくることにした。
書き終わったら満足してしばらく見ないけど、見返すと直すところでてくるのでこんな感じでちょいちょい見返したい。

f:id:sekai013:20150307105933p:plainf:id:sekai013:20150307105940p:plainf:id:sekai013:20150307105945p:plain