enable env var. input for highbeam

This commit is contained in:
ville rantanen
2014-06-13 12:53:22 +03:00
parent 233ffde29b
commit 9b7b0eb121

View File

@@ -15,6 +15,10 @@ RULES=(
"q.\{0,3\}r" "$H$Y" # q*r with maximum 3 characters in between. color bright yellow
)
--------------------
Rules can be also exressed as comma separated list variable:
export HB_RULES='\''[0-9],$C,g,$Y'\''
HB_RULES are appended to other rules
Color variables: $R $G $B $Y $M $C $W $BLACK
Modify to bright version by prefixing with $H (e.g. $H$G)
Background colors: $BGR $BGG $BGB $BGY $BGC $BGM $BGW
@@ -53,6 +57,7 @@ BGM="${E}45m"
BGC="${E}46m"
BGW="${E}47m"
CONF_FILE=~/.highbeamrc
CONF_LINE=""
FLAGS="ig"
@@ -76,10 +81,12 @@ done
[[ -z "$CONF_LINE" ]] && {
# user rules:
[[ -e "${CONF_FILE}" ]] && . "${CONF_FILE}" || {
echo You may have wrong format in "${CONF_FILE}" >&2
usage >&2
exit 1
[[ -e "${CONF_FILE}" ]] && {
. "${CONF_FILE}" || {
echo You may have wrong format in "${CONF_FILE}" >&2
usage >&2
exit 1
}
}
for (( r=0; r<${#RULES[@]}; r++ ));
do REGEX="$REGEX -e 's/\(${RULES[$r]}\)/${RULES[$(( $r + 1 ))]}\1${Z}/${FLAGS}'"
@@ -92,8 +99,22 @@ done
r=$(( $r + 1 ))
done
}
eval sed $REGEX || echo Maybe errors in your rules: "$REGEX" >&2
# env variable fed rules
[[ -z "$HB_RULES" ]] || {
CONF_ENV=( $( eval echo "$HB_RULES" ) )
for (( r=0; r<${#CONF_ENV[@]}; r++ ));
do REGEX="$REGEX -e 's/\(${CONF_ENV[$r]}\)/${CONF_ENV[$(( $r + 1 ))]}\1${Z}/${FLAGS}'"
r=$(( $r + 1 ))
done
}
#~ echo ${CONF_ENV[@]}
#~ echo $HB_RULES
#~ echo $REGEX
[[ -z "$REGEX" ]] && {
cat -
} || {
eval sed $REGEX || echo Maybe errors in your rules: "$REGEX" >&2
}