Code

Node tool: correctly save node skewing to undo history
[inkscape.git] / po / check_for_tutorial_problems.sh
1 #!/bin/bash
2 # check the main Inkscape tree for tutorial-related problems
3 # $1: full name of the root directory of the local copy of the main Inkscape tree
4 # usage example:
5 #   check_for_tutorial_problems.sh /tmp/inkscape
7 LANG=C
8 LC_ALL=C
10 PO_FILE_LIST=`ls -1 "$1/po/" | grep "\.po$" | sort`
12 echo "$PO_FILE_LIST" |\
13 while read PO_FILENAME; do
14   echo; echo "----- $PO_FILENAME -----------------------------------"
15   TRANSLATIONS_IN_CURRENT_PO=`cat "$1/po/$PO_FILENAME" | grep -A 1 "^msgid\ \"tutorial-[^.]*\.svg\""`
16   UNTRANSLATED_COUNT=`echo "$TRANSLATIONS_IN_CURRENT_PO" | grep -c "^msgstr \"\""`
17   if [ $UNTRANSLATED_COUNT -gt 0 ]; then
18     echo "$PO_FILENAME has $UNTRANSLATED_COUNT untranslated tutorial filenames"
19   fi
20   echo "$TRANSLATIONS_IN_CURRENT_PO" | grep -v "^msgstr \"\"" |\
21   grep "^msgstr \"" |\
22   while read TUTORIAL_FILENAME_TRANSLATION_LINE; do
23     TUTORIAL_FILENAME_TRANSLATION=`echo "$TUTORIAL_FILENAME_TRANSLATION_LINE" |\
24     sed 's/^msgstr \"\(.*\)\"[  ]*$/\1/'`
25     echo -n "$PO_FILENAME references \"$TUTORIAL_FILENAME_TRANSLATION\""
26     if [ -e "$1/share/tutorials/$TUTORIAL_FILENAME_TRANSLATION" ]; then
27       echo "                    OK"
28     else
29       echo "                    ERROR: THE REFERENCED FILE DOESN'T EXIST, PLEASE CHECK"
30     fi
31   done
32 done
34 echo; echo
36 TUTORIAL_FILE_LIST=`ls -1 "$1/share/tutorials/" | grep "^tutorial-[^.]*\...\.svg$" | sort`
38 echo "$TUTORIAL_FILE_LIST" |\
39 while read TUTORIAL_FILENAME; do
40   echo; echo "----- $TUTORIAL_FILENAME -----------------------------------"
41   LANGUAGE_CODE=`echo "$TUTORIAL_FILENAME" | sed 's/^tutorial-[^.]*\.\(..\)\.svg$/\1/'`
42   if [ -e "$1/po/$LANGUAGE_CODE.po" ]; then
43     TRANSLATIONS_IN_CURRENT_PO=`cat "$1/po/$LANGUAGE_CODE.po" | grep -A 1 "^msgid\ \"tutorial-[^.]*\.svg\""`
44     echo "$TRANSLATIONS_IN_CURRENT_PO" | grep -q "^msgstr \"$TUTORIAL_FILENAME\""
45     if [ $? -eq 0 ]; then
46       echo "$TUTORIAL_FILENAME is referenced in $LANGUAGE_CODE.po"
47     else
48       echo "WARNING: $TUTORIAL_FILENAME IS NOT REFERENCED IN $LANGUAGE_CODE.po"
49     fi
50   else
51     echo "WARNING: \"$LANGUAGE_CODE.po\" FILE NOT FOUND"
52   fi
53 done
55 echo; echo
57 TUTORIAL_DIRECTORY_FILELIST=`ls -1 "$1/share/tutorials/" | grep -v "^Makefile.am$" | sort`
59 echo "$TUTORIAL_DIRECTORY_FILELIST" |\
60 while read TUTORIAL_DIRECTORY_FILENAME; do
61   cat "$1/share/tutorials/Makefile.am" | grep -q "^    $TUTORIAL_DIRECTORY_FILENAME "
62   if [ $? -ne 0 ]; then
63     cat "$1/share/tutorials/Makefile.am" | grep -q "^    $TUTORIAL_DIRECTORY_FILENAME$"
64     if [ $? -ne 0 ]; then
65       echo "WARNING: $TUTORIAL_DIRECTORY_FILENAME IS NOT IN Makefile.am"
66     fi
67   fi
68 done