Without the read x, the message is not displayed when & is used.
# $1: timeout
notify() {
if installed dzen2; then
# $1: timeout
notify() {
if installed dzen2; then
- sed 's/\^/^^/g' | dzen2 -fg blue -bg yellow -y 15 -h 30 -p "$1" &
+ read x
+ printf '%s\n' "$x" | sed 's/\^/^^/g' \
+ | dzen2 -fg blue -bg yellow -y 15 -h 30 -p "$1" &
elif installed xmessage; then
# Fallback solution, display first line of stdin.
read x
elif installed xmessage; then
# Fallback solution, display first line of stdin.
read x