HubotのScriptを翻訳するとかわいい

  • 10
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

Hubotを、HipChatやIRCにいさせて、いろいろな告知をさせているところは多いかと思われます。自分のところもそうなのですが、しかし生のママの状態でHubotを使うと

@hubot task add hogehoge

みたいになってしまう!Hubotかわいくない!俺は下みたいにしたいんだ!

@hubot やる あれとかこれとか

つーわけで、この記事はHubotを日本語にするためのコツみたいなのを書いておきます。

コツ: msg.send あたりを見る

例えば、ここでHubot Scriptの一つである tasks.coffeeを見てみましょう。下のようなラインがありますね。ふむふむ

  robot.respond /(task add|add task) (.+?)$/i, (msg) ->
    task = tasks.add msg.match[2]
    msg.send "Task added: ##{task.num} - #{task.task}"

msg.sendはご存じの通り、各位にメッセージを送るやつです。まずこのあたりを書き換えてしましましょう。

  robot.respond /(task add|add task) (.+?)$/i, (msg) ->
    task = tasks.add msg.match[2]
    msg.send "おしごと追加しましたー: ##{task.num} - #{task.task}"

ぐっと身近になりましたね。

正規表現の部分を書き換える

例えば、robot.respondであったり、robot.hearといった部分の正規表現は、そういう発言があるか、あるいはそういうリプライが内容にあったかで、タスクを実行します。とはいえ、いちいち task addみたいに書くのもかわいくない!だから下のように書き換える!

  robot.respond /(やる)( | )(.+?)$/i, (msg) ->
    task = tasks.add msg.match[3]
    msg.send "おしごと追加しましたー: ##{task.num} - #{task.task}"

まとめ: メッセージが日本語で書けると親しみやすい

hubotについて、なんか弄ってみたいけど難しそうだなー、とおもう人は多いと思いますが、まず最初にこういったメッセージ部分の翻訳から始めてみると、わりと自分だけのHubot感が出てきてお薦めです。

この投稿は hubot-scripts Advent Calendar 20139日目の記事です。