Create a gist now

Instantly share code, notes, and snippets.

Minecraftのチャットが来たらMacの通知を表示する奴 詳しくはREADME.md参照

Mineraft Alert

Minecraftのチャットが来たらMacの通知を表示する奴

使い方

  1. Minecraftを起動する
  2. ./minecraftalert.sh ~/Library/Application\ Support/minecraft/logs/latest.logの用に、引数としてログファイルを指定して起動する
  3. 何も出ないが、ターミナルはそのままにしておけば新しいチャットが来た時に通知が来る
  4. 閉じるときはcontrol+Cで終了させる

カスタマイズ

通知メッセージのカスタマイズ

12行目の部分を変更することで通知メッセージをカスタマイズ出来る

Minecraftの部分をタイトルに
Got a chatの部分をサブタイトルに
Pingの部分には通知サウンドを指定(システム環境設定->サウンド->サウンドエフェクトにある名前を指定)

通知するチャットのカスタマイズ

18と19行目の部分の正規表現を弄る

JPMCPvPのチャットのみを通知させるための例

tail -f -n 0 "$1" \
  | grep --line-buffered -e '^\[[0-9:].*\] \[Client thread\/INFO\]: \[CHAT\] <.*>: .*$' \
  | sed -l -e 's/^\[[0-9:].*\] \[Client thread\/INFO\]: \[CHAT\] \<\(.*\)\>: \(.*\)$/\1: \2/' \
  | check_alert
#!/bin/bash
# Copyright 2015 misterT2525.
if [[ $# -ne 1 ]]; then
echo "Usage: $0 logFile" >&2
exit 1
fi
function check_alert() {
while read i; do
echo "$i"
osascript -e "display notification \"$i\" with title \"Minecraft\" subtitle \"Got a chat\" sound name \"Ping\"" &
done
}
cd "$(dirname "$0")"
tail -f -n 0 "$1" \
| grep --line-buffered -e '^\[[0-9:].*\] \[Client thread\/INFO\]: \[CHAT\] ' \
| sed -l -e 's/^\[[0-9:].*\] \[Client thread\/INFO\]: \[CHAT\] //' \
| check_alert
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment