b162ab7
#! /bin/bash
b162ab7
b162ab7
# This script is a hack to extract translations for some strings from
b162ab7
# the gedit translations and append them to the gnome-terminal translations.
b162ab7
#
b162ab7
# To apply translations, use:
b162ab7
# ./apply-extra-translations --apply gnome-terminal-2.28.0 extra-translations
b162ab7
#
b162ab7
# To update the translations, use:
b162ab7
# ./apply-extra-translations --update gnome-terminal-2.28.0 extra-translations
b162ab7
b162ab7
if [ $# -ne 3 ]; then
b162ab7
  echo "Usage: apply-extra-translations [--update|--apply] DIRECTORY FILE"
b162ab7
  exit 1
b162ab7
fi
b162ab7
b162ab7
mode=$1
b162ab7
dir=$2
b162ab7
translations=$3
2e1b150
gedit_strings=("_Search" "_Find..." "Find Ne_xt" "Find Pre_vious" "Find" "_Search for: " "_Match case" "Match _entire word only" "Match as _regular expression" "Search _backwards" "_Wrap around")
2e1b150
our_strings=("_Search" "_Find..." "Find Ne_xt" "Find Pre_vious" "Find" "_Search for:" "_Match case" "Match _entire word only" "Match as _regular expression" "Search _backwards" "_Wrap around")
b162ab7
b162ab7
if [ "$mode" = "--update" ]; then
b162ab7
  if ! rpm -q gedit >/dev/null ; then
b162ab7
    echo "Please install gedit"
b162ab7
    exit 1
b162ab7
  fi
2e1b150
  for l in `grep -v "^#" $dir/po/LINGUAS`; do
2e1b150
    for s in "${gedit_strings[@]}"; do
2e1b150
      msgstr=`env LANGUAGE="$l.UTF-8" gettext --domain=gedit "$s"`
2e1b150
      echo "$l@$s@$msgstr"
b162ab7
    done
b162ab7
  done >$translations
b162ab7
b162ab7
elif [ "$mode" = "--apply" ]; then
b162ab7
2e1b150
  for l in `grep -v "^#" $dir/po/LINGUAS`; do
2e1b150
    for (( i = 0; i < ${#our_strings[@]}; i++ )) ; do
2e1b150
      s=${gedit_strings[$i]}
2e1b150
      msgid=${our_strings[$i]}
2e1b150
      msgstr=`grep "^$l@$s@" $translations | cut -d@ -f3`
2e1b150
      cat >>$dir/po/$l.po <
b162ab7
2e1b150
msgid "$msgid"
b162ab7
msgstr "$msgstr"
b162ab7
EOF
b162ab7
    done
b162ab7
  done
b162ab7
b162ab7
fi
b162ab7
b162ab7
exit