diff --git a/help/help_diff.sh b/help/help_diff.sh index 9d0da9258c..2096fa7709 100755 --- a/help/help_diff.sh +++ b/help/help_diff.sh @@ -1,19 +1,26 @@ #!/bin/sh -# This script compares a translated help file to the master file and prints -# out any missing messages. Needs the language code as parameter ($1). +# This script walks through the master (stdin) help/message file, and +# prints (stdout) only those messages which are missing from the help +# file given as parameter ($1). # -# Example: help_diff.sh hu +# Example: help_diff.sh help_mp-hu.h < help_mp-en.h > missing.h -exec < help_mp-en.h +curr="" -while read line; do +while read -r line; do if echo "$line" | grep '^#define' > /dev/null 2>&1; then curr=`echo "$line" | cut -d ' ' -f 2` - if grep "^#define $curr" help_mp-$1.h > /dev/null 2>&1; then - true - else - echo "$line" + if grep "^#define $curr" $1 > /dev/null 2>&1; then + curr="" + fi + else + if [ -z "$line" ]; then + curr="" fi fi + + if [ -n "$curr" ]; then + echo "$line" + fi done