# hgrep - highlight grep if (( ! $# )); then echo "Usage: $0:t [-e pattern...] [file...]" >&2 return 1 fi local -a regex local htext=`echotc so` ntext=`echotc se` while [[ "$1" = -e ]]; do regex=( $regex "$2" ) shift 2 done if (( ! $#regex )); then regex=( "$1" ) shift fi regex=( "-e s/${^regex[@]}/$htext&$ntext/g" ) sed ${(Ff)regex[@]} "$@"