#!/bin/bash # XXX: CHANGEME KEYBOARD_ID="AT Translated Set 2 keyboard" b_isColon=false KEY_ENTER=36 KEY_SEMICOLON=47 KEY_BACKSPACE=22 KEY_3=12 xinput test "$KEYBOARD_ID" | while read -r line; do if [[ "$line" =~ "key press" ]]; then keycode="$(echo "$line" | awk '{print$3}')" case "$keycode" in "$KEY_ENTER") b_isColon=false; sfxc play typewriter/pc_on;; "$KEY_BACKSPACE") b_isColon=false; sfxc play typewriter/bwomp;; "$KEY_SEMICOLON") b_isColon=true; sfxc play typewriter/text;; "$KEY_3") if [ "$b_isColon" = "true" ]; then sfxc play typewriter/meow; else sfxc play typewriter/text; fi; ;; *) b_isColon=false; sfxc play typewriter/text;; esac; fi; done