KDE Localization/it/Passaggio al tronco

From KDE Community Wiki
Revision as of 19:58, 4 April 2012 by Fzenith (talk | contribs) (Importazione)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Quando si passa da trunk a stable, l'amministrazione internazionale dei traduttori si preoccupa cortesemente di ridirigere stable a una nuova copia delle traduzioni da trunk. È un po' più complicato il passaggio inverso, in quanto le traduzioni del ramo stabile vanno fuse con quelle preesistenti.

#!/bin/bash

# Percorsi alle cartelle l10n (sopra it e templates)
VECCHIORAMO="stable"
NUOVORAMO="trunk"
LINGUA="it"
PACCHETTO="" # Vuoto per tutto

FILES=`find ${NUOVORAMO}/templates/${PACCHETTO}/ -name *.pot`

for FILE in $FILES
do
	POT=`echo $FILE | sed -e "s#^${NUOVORAMO}/templates/##g"`
	PO=${POT/.pot/.po}
	VECCHIOFILE="${VECCHIORAMO}/${LINGUA}/${PO}"
	NUOVOFILE="${NUOVORAMO}/${LINGUA}/${PO}"

	if [ -e "${VECCHIOFILE}" ]
	then
		if [ ! -e "${NUOVOFILE}" ]
		then
			echo "Copia di ${PO}..." &&
			svn cp ${VECCHIOFILE} ${NUOVOFILE} ||
			echo "Errore nella copia SVN di ${PO}"
		fi
		echo "Fusione del vecchio file PO ${PO} con il nuovo POT..." &&
		msgmerge ${VECCHIOFILE} ${FILE} --previous > ${NUOVOFILE} ||
		echo "Errore nella fusione di ${PO}"
	fi
done

Per tutti i file POT sul tronco, lo script cerca le eventuali traduzioni su stable, e le copia sul tronco se mancano. Poi, lo script fonde le traduzioni con l'opzione --previous per mantenere eventuali msgid precedenti e aiutare nell'aggiornamento da parte del traduttore.