back to notes

Colorized maven output

!/bin/bash

Formatting constants

BOLD=tput bold UNDERLINEON=tput smul UNDERLINEOFF=tput rmul TEXTBLACK=tput setaf 0 TEXTRED=tput setaf 1 TEXTGREEN=tput setaf 2 TEXTYELLOW=tput setaf 3 TEXTBLUE=tput setaf 4 TEXTMAGENTA=tput setaf 5 TEXTCYAN=tput setaf 6 TEXTWHITE=tput setaf 7 BACKGROUNDBLACK=tput setab 0 BACKGROUNDRED=tput setab 1 BACKGROUNDGREEN=tput setab 2 BACKGROUNDYELLOW=tput setab 3 BACKGROUNDBLUE=tput setab 4 BACKGROUNDMAGENTA=tput setab 5 BACKGROUNDCYAN=tput setab 6 BACKGROUNDWHITE=tput setab 7 RESET_FORMATTING=tput sgr0

Wrapper function for Maven's mvn command.

mvn-color() { # Filter mvn output using sed mvn $@ | sed -e "s/([INFO] -.)/${TEXT_BLUE}${BOLD}1/g" -e "s/([INFO] [.)/${RESETFORMATTING}${BOLD}1${RESETFORMATTING}/g" -e "s/([INFO] BUILD SUCCESSFUL)/${BOLD}${TEXTGREEN}1${RESETFORMATTING}/g" -e "s/([WARNING].)/${BOLD}${TEXTYELLOW}1${RESETFORMATTING}/g" -e "s/([ERROR].)/${BOLD}${TEXTRED}1${RESETFORMATTING}/g" -e "s/Tests run: ([^,]), Failures: ([^,]), Errors: ([^,]), Skipped: ([^,])/${BOLD}${TEXTGREEN}Tests run: 1${RESETFORMATTING}, Failures: ${BOLD}${TEXTRED}2${RESETFORMATTING}, Errors: ${BOLD}${TEXTRED}3${RESETFORMATTING}, Skipped: ${BOLD}${TEXTYELLOW}4${RESETFORMATTING}/g"

# Make sure formatting is reset echo -ne ${RESET_FORMATTING} }

mvn-color $@



last updated september 2011