#! /usr/bin/perl -w ############################################################################ # # Copyright (C) 2016 The Qt Company Ltd. # Contact: https://www.qt.io/licensing/ # # This file is part of Qt Creator. # # Commercial License Usage # Licensees holding valid commercial Qt licenses may use this file in # accordance with the commercial license agreement provided with the # Software or, alternatively, in accordance with the terms contained in # a written agreement between you and The Qt Company. For licensing terms # and conditions see https://www.qt.io/terms-conditions. For further # information use the contact form at https://www.qt.io/contact-us. # # GNU General Public License Usage # Alternatively, this file may be used under the terms of the GNU # General Public License version 3 as published by the Free Software # Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT # included in the packaging of this file. Please review the following # information to ensure the GNU General Public License requirements will # be met: https://www.gnu.org/licenses/gpl-3.0.html. # ############################################################################ use strict; my %scores = (); my $files = join("\n", <*_??.ts>); my $res = `xmlpatterns -param files=\"$files\" check-ts.xq`; for my $i (split(/ /, $res)) { $i =~ /^(?:[^\/]+\/)*qtcreator_([^.]+)\.ts:(.*)$/; my ($lang, $pc) = ($1, $2); $scores{$lang} = $pc; } my $code = ""; for my $lang (sort(keys(%scores))) { my $pc = $scores{$lang}; my $fail = ""; if (int($pc) < 98) { $fail = " (excluded)"; } else { $code .= " ".$lang; } printf "%-5s %3d%s\n", $lang, $pc, $fail; } my $fn = "translations.pro"; my $nfn = $fn."new"; open IN, $fn or die; open OUT, ">".$nfn or die; while (1) { $_ = ; last if (/^LANGUAGES /); print OUT $_; } while ($_ =~ /\\\n$/) { $_ = ; } print OUT "LANGUAGES =".$code."\n"; while () { print OUT $_; } close OUT; close IN; rename $nfn, $fn;