mirror of
https://github.com/yshui/picom.git
synced 2024-12-09 14:18:57 -05:00
picom-trans: Use POSIX-compatible sed, grep
\b \? \+ \| are GNU extensions to sed In BRE (Basic Regular Expressions) there is no \? \+ or \| In ERE (Extended Regular Expressions) there is ? + and | To specify sed to use ERE, specify the -E flag. GNU grep does not distinguish between BRE and ERE, but other implementations do. To make grep use ERE instead of BRE, specify the -E flag. The GNU extension \b has no equivalent in either BRE or ERE. So, in line number 216, I used the whole initial expected output. For quick reference (n/a means 'not available') - GNU BRE | POSIX BRE | POSIX ERE ------------------------------- \( | \( | ( \) | \) | ) \? | \{0,1\} | ? or {0,1} \+ | \{1,\} | + or {1,} \| | n/a | | \b | n/a | n/a
This commit is contained in:
parent
7ba87598c1
commit
7b4af3aef6
1 changed files with 5 additions and 5 deletions
|
@ -79,7 +79,7 @@ v=
|
|||
|
||||
# Workaround: replace '-5' with '~5' so as not to confuse getopts.
|
||||
for v in "$@"; do
|
||||
shift && set -- "$@" "$(echo "$v" | sed 's/^-\([0-9]\+%\?\)$/~\1/')"
|
||||
shift && set -- "$@" "$(echo "$v" | sed -E 's/^-([0-9]+%?)$/~\1/')"
|
||||
done
|
||||
|
||||
# This takes into account the fact that getopts stops on
|
||||
|
@ -102,7 +102,7 @@ while test $# -gt 0; do
|
|||
OPTIND=$((OPTIND + 1))
|
||||
;;
|
||||
name=* | window=* | opacity=*)
|
||||
v=$(echo "$OPTARG" | sed 's/^[^=]\+=//')
|
||||
v=$(echo "$OPTARG" | sed -E 's/^[^=]+=//')
|
||||
;;
|
||||
*)
|
||||
echo "$0: illegal option $OPTARG" >& 2
|
||||
|
@ -137,10 +137,10 @@ while test $# -gt 0; do
|
|||
done
|
||||
|
||||
# clean up opacity. xargs == a poor man's trim.
|
||||
opacity=$(echo "$opacity" | xargs | sed 's/%//g' | sed 's/^~\([0-9]\+\)$/-\1/')
|
||||
opacity=$(echo "$opacity" | xargs | sed 's/%//g' | sed -E 's/^~([0-9]+)$/-\1/')
|
||||
|
||||
# Validate opacity value
|
||||
if test -z "$action" && ! echo "$opacity" | grep -q '^[+-]\?[0-9]\+$'; then
|
||||
if test -z "$action" && ! echo "$opacity" | grep -qE '^[+-]?[0-9]+$'; then
|
||||
echo "Invalid opacity specified: $opacity."
|
||||
exit 1
|
||||
fi
|
||||
|
@ -213,7 +213,7 @@ fi
|
|||
|
||||
# Get current opacity.
|
||||
cur=$(xprop -id "$topmost" -notype _NET_WM_WINDOW_OPACITY \
|
||||
| sed 's/^.*\b\([0-9]\+\).*$\|^.*$/\1/')
|
||||
| sed -E 's/^_NET_WM_WINDOW_OPACITY = ([0-9]*)$|^.*$/\1/')
|
||||
|
||||
# Remove the opacity property.
|
||||
if test x"$action" = x'delete' -o \( x"$action" = x'toggle' -a -n "$cur" \); then
|
||||
|
|
Loading…
Reference in a new issue