In this situation it was easier to fix yours. I applied these 3 points

(fixed locking echo, removed excessive cut to make script a bit faster
and shortened grep) and changed copy mark from "x" to "" in order to use
-z and -n tests.
patch by GoTaR <priv0.onet.pl->gotar>


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@8539 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
arpi 2002-12-23 17:28:19 +00:00
parent dfc674ba69
commit 1931e2396e
1 changed files with 17 additions and 18 deletions

View File

@ -1,4 +1,4 @@
#! /bin/sh #!/bin/sh
# This script walks through the master (stdin) help/message file, and # This script walks through the master (stdin) help/message file, and
# prints (stdout) only those messages which are missing from the help # prints (stdout) only those messages which are missing from the help
@ -6,24 +6,23 @@
# #
# Example: help_diff.sh help_mp-hu.h < help_mp-en.h > missing.h # Example: help_diff.sh help_mp-hu.h < help_mp-en.h > missing.h
curr="x" curr=""
while read -r line ; do while read -r line; do
if echo -E "$line" | grep -q '^#define'; then
if ( echo $line | cut -d ' ' -f 1 | grep '^#define' > /dev/null ); then curr=`echo -E "$line" | cut -d ' ' -f 2`
curr=`echo $line | cut -d ' ' -f 2` if grep -q "^#define $curr " $1; then
if ( grep " $curr " $1 > /dev/null ); then curr=""
curr="x" fi
fi else
else if [ -z "$line" ]; then
if test x"$line" = x; then curr=""
curr="x" fi
fi fi
fi
if test $curr != "x" ; then
echo "$line"
fi
if [ -n "$curr" ]; then
echo -E "$line"
fi
done done