私は技術系のコミュニティをDiscordで運営しているのですが、質問者がコードブロックを使わないで、コードを送信してくる問題を解決するために、このボットを作成しました。
Discord.js Japan User Group (opens new window)用に作成したボットで、コードブロックを使用せずに送信されたコードをフォーマットし、ハイライトします。
コードのフォーマットにつきましては、mouse484 (opens new window)氏が提案しPRを送ってくださいました。感謝!
# 使用したパッケージ
- Discord.js (opens new window)
- Discordボットを操作するために使用
- Prettier (opens new window)
- コードをフォーマットするために使用
- Highlight.js (opens new window)
- コードの言語を調べるために使用
# 起動方法
- Node.js v14以上を使用すること
- Optional Chaining などの新しい構文が使用されているため
- 環境変数にDiscordボットのトークンを
DISCORD_TOKEN
として設定する yarn compile
を実行し、ソースコードをコンパイルするyarn start
で起動
# コマンド
>highlight
またはボットをメンションして送信することで、真上のメッセージをハイライトします>highlight <メッセージID>
またはボットをメンションして対象のメッセージをハイライトできます
# Dockerを利用する
Google Cloud のVMで動かすために、Dockerイメージ (opens new window)が公開されているので、そちらを利用してください。