#!/usr/bin/env bash fn="/tmp/kbswitcher.status" layout="" # first run the file won't exist if [ ! -f "$fn" ]; then layout="dvorak" echo "dvorak" > "$fn" else case $(cat "$fn") in us) echo "dvorak" > "$fn" layout="dvorak" ;; dvorak) echo "us" > "$fn" layout="us" ;; esac fi notify-send -u normal -r 161616 "kbswitcher" "Keyboard layout set to $layout." setxkbmap -layout "$layout" -option ctrl:nocaps