ユーザーのメッセージをハイライトするDiscordボット

私は技術系のコミュニティをDiscordで運営しているのですが、質問者がコードブロックを使わないで、コードを送信してくる問題を解決するために、このボットを作成しました。

InkoHX/highlight-discordbot - GitHub

Discord.js Japan User Group用に作成したボットで、コードブロックを使用せずに送信されたコードをフォーマットし、ハイライトします。

コードのフォーマットにつきましては、mouse484氏が提案しPRを送ってくださいました。感謝!

# 使用したパッケージ

  • Discord.js
    • Discordボットを操作するために使用
  • Prettier
    • コードをフォーマットするために使用
  • Highlight.js
    • コードの言語を調べるために使用

# 起動方法

  • Node.js v14以上を使用すること
    • Optional Chaining などの新しい構文が使用されているため
  1. 環境変数にDiscordボットのトークンをDISCORD_TOKENとして設定する
  2. yarn compileを実行し、ソースコードをコンパイルする
  3. yarn startで起動

# コマンド

  • >highlightまたはボットをメンションして送信することで、真上のメッセージをハイライトします
  • >highlight <メッセージID>またはボットをメンションして対象のメッセージをハイライトできます

# Dockerを利用する

Google Cloud のVMで動かすために、Dockerイメージが公開されているので、そちらを利用してください。