#!/bin/sh FILE=$(readlink -f "$1") DIR=$(dirname "$FILE") BASE="${FILE%.*}" SHEBANG=$(sed -n 1p "$FILE") cd "$DIR" || exit shebangtest() { case "$SHEBANG" in \#\!*) "$FILE" ;; *) sent "$FILE" 2>/dev/null & ;; esac } case "$FILE" in *\.c) cc "$FILE" -o "$BASE" && "$BASE" ;; *\.py) python "$FILE" ;; *\.go) go run "$FILE" ;; *) shebangtest ;; esac notify-send "$FILE"