#!/bin/bash # Penser à adapter les chemins des fichiers des règles de sentence : ~/.script/sentEN.sed et ~/.script/sentFR.sed source=$1 trad=$2 nom=`sed 1q $source | tr -d " "` # application règles de sentence sur la source + génère fichier ssed -R -f ~/.script/sentEN.sed < $source > /tmp/source sed -i -e '/^$\|^\s$/d' /tmp/source # application règles de sentence sur la trad + génère fichier ssed -R -f ~/.script/sentFR.sed < $trad > /tmp/trad sed -i '/^$/d' /tmp/trad # compte le nombre de lignes nb_source=`awk 'END{print NR}' /tmp/source` nb_trad=`awk 'END{print NR}' /tmp/trad` :> $PWD/omegat_merge_dif.txt echo "sentences de la source : "$nb_source >> $PWD/omegat_merge_dif.txt echo "sentences de la traduction : "$nb_trad >> $PWD/omegat_merge_dif.txt # boucle 1 ext=1 # lecture source ( apparemment inutile) #sentEN=`sed r /tmp/source` # création du fichier tmx mergetmx() { oldifs=$IFS IFS=' ' # création fichier de numération des sentences trad for i in `seq 1 $nb_trad` do echo tab$i="\$(cat /tmp/trad | awk 'NR == "$i" {print}') ; echo \$"tab$i done > /tmp/sent_var.txt while read line; do eval $line; done < /tmp/sent_var.txt > /dev/null # création des balises d'en tête echo "" echo "" echo "" echo "
" echo "" echo "" # création des segments for elmt_source in $(cat /tmp/source); do echo "" echo "" echo "$elmt_source" echo "" echo "" for n in $nb_trad do sentFR="echo \$tab$ext" echo "`eval $sentFR`" done echo "" echo "" let "ext+=1" done # création des balises de fin echo "" echo "" echo "" IFS=$oldifs } mergetmx > $nom.tmx if [ $nb_source != $nb_trad ]; then echo "Différence du nombre de sentences" echo "source: $nb_source" echo "traduction: $nb_trad" else echo "Source et Traduction correspondent" tail $nom.tmx fi exit