def UpdateISPO(filename): filename = filename.replace('.strings', '') translationDataOld = TranslationDataIS() translationDataOld.loadFromPO('PO\\' + filename, 'po', (False, False, True)) translationData = TranslationDataIS() translationData.loadFromPO(r'PO\mpc-hc.installer', 'pot', (False, False, True)) translationData.translate(translationDataOld) translationData.writePO('PO\\' + filename, 'po', (False, False, True))
def UpdateISPOT(): translationData = TranslationDataIS() translationData.loadFromIS(r'..\..\..\distrib\custom_messages.iss') translationDataOld = TranslationDataIS() translationDataOld.loadFromPO(r'PO\mpc-hc.installer', 'pot', (False, False, True)) output = tuple( not b for b in translationData.areEqualsSections(translationDataOld)) translationData.writePO(r'PO\mpc-hc.installer', 'pot', output)
def UpdateIS(normalizePOFile=True): translationsConfigAndData = [] for cfgPath in glob.glob(r'cfg\*.cfg'): config = ConfigParser.RawConfigParser({'installerIsTranslated': 'True'}) config.readfp(codecs.open(cfgPath, 'r', 'utf8')) if config.getboolean('Info', 'installerIsTranslated'): poPath = r'PO\mpc-hc.installer.' + config.get('Info', 'langShortName') translationData = TranslationDataIS() translationData.loadFromPO(poPath, 'po', (False, False, True)) if normalizePOFile: # Write back the PO file to ensure it's properly normalized translationData.writePO(poPath, 'po', (False, False, True)) translationsConfigAndData.append((config, translationData)) TranslationDataIS.translateIS(translationsConfigAndData, r'..\..\..\distrib\custom_messages.iss', r'..\..\..\distrib\custom_messages_translated.iss')
# GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. import sys import glob from TranslationDataIS import * if __name__ == '__main__': translationsConfigAndData = [] for cfgPath in glob.glob(r'cfg\*.cfg'): config = ConfigParser.RawConfigParser( {'installerIsTranslated': 'True'}) config.readfp(codecs.open(cfgPath, 'r', 'utf8')) if config.getboolean('Info', 'installerIsTranslated'): poPath = r'PO\mpc-hc.installer.' + config.get( 'Info', 'langShortName') translationData = TranslationDataIS() translationData.loadFromPO(poPath, 'po', (False, False, True)) # Write back the PO file to ensure it's properly normalized translationData.writePO(poPath, 'po', (False, False, True)) translationsConfigAndData.append((config, translationData)) TranslationDataIS.translateIS( translationsConfigAndData, r'..\..\..\distrib\custom_messages.iss', r'..\..\..\distrib\custom_messages_translated.iss')
# (at your option) any later version. # # MPC-HC is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. import sys from TranslationDataIS import * if __name__ == '__main__': if len(sys.argv) != 2: RuntimeError( 'Invalid number of parameters. Usage: UpdateISPO.py <filename>') filename = sys.argv[1].replace('.strings', '') translationDataOld = TranslationDataIS() translationDataOld.loadFromPO('PO\\' + filename, 'po', (False, False, True)) translationData = TranslationDataIS() translationData.loadFromPO(r'PO\mpc-hc.installer', 'pot', (False, False, True)) translationData.translate(translationDataOld) translationData.writePO('PO\\' + filename, 'po', (False, False, True))