enable env var. input for highbeam
This commit is contained in:
25
highbeam
25
highbeam
@@ -15,6 +15,10 @@ RULES=(
|
|||||||
"q.\{0,3\}r" "$H$Y" # q*r with maximum 3 characters in between. color bright yellow
|
"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
|
Color variables: $R $G $B $Y $M $C $W $BLACK
|
||||||
Modify to bright version by prefixing with $H (e.g. $H$G)
|
Modify to bright version by prefixing with $H (e.g. $H$G)
|
||||||
Background colors: $BGR $BGG $BGB $BGY $BGC $BGM $BGW
|
Background colors: $BGR $BGG $BGB $BGY $BGC $BGM $BGW
|
||||||
@@ -53,6 +57,7 @@ BGM="${E}45m"
|
|||||||
BGC="${E}46m"
|
BGC="${E}46m"
|
||||||
BGW="${E}47m"
|
BGW="${E}47m"
|
||||||
|
|
||||||
|
|
||||||
CONF_FILE=~/.highbeamrc
|
CONF_FILE=~/.highbeamrc
|
||||||
CONF_LINE=""
|
CONF_LINE=""
|
||||||
FLAGS="ig"
|
FLAGS="ig"
|
||||||
@@ -76,11 +81,13 @@ done
|
|||||||
|
|
||||||
[[ -z "$CONF_LINE" ]] && {
|
[[ -z "$CONF_LINE" ]] && {
|
||||||
# user rules:
|
# user rules:
|
||||||
[[ -e "${CONF_FILE}" ]] && . "${CONF_FILE}" || {
|
[[ -e "${CONF_FILE}" ]] && {
|
||||||
|
. "${CONF_FILE}" || {
|
||||||
echo You may have wrong format in "${CONF_FILE}" >&2
|
echo You may have wrong format in "${CONF_FILE}" >&2
|
||||||
usage >&2
|
usage >&2
|
||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
}
|
||||||
for (( r=0; r<${#RULES[@]}; r++ ));
|
for (( r=0; r<${#RULES[@]}; r++ ));
|
||||||
do REGEX="$REGEX -e 's/\(${RULES[$r]}\)/${RULES[$(( $r + 1 ))]}\1${Z}/${FLAGS}'"
|
do REGEX="$REGEX -e 's/\(${RULES[$r]}\)/${RULES[$(( $r + 1 ))]}\1${Z}/${FLAGS}'"
|
||||||
r=$(( $r + 1 ))
|
r=$(( $r + 1 ))
|
||||||
@@ -92,8 +99,22 @@ done
|
|||||||
r=$(( $r + 1 ))
|
r=$(( $r + 1 ))
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
# 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
|
eval sed $REGEX || echo Maybe errors in your rules: "$REGEX" >&2
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user