X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=spec_utf8;h=d2c564b6a0be4e28792560485a61f2c1c92397ed;hb=c8c52be7cc9daf24a9a3ef23a034580a8fdb3fdf;hp=f6e715f6f6e17e8e0b58d57a1f5029c93f4b8f7e;hpb=e9bb2957f8ebab9d4bf5813c2625e0ea5b159a43;p=packages%2Frpm-build-tools.git diff --git a/spec_utf8 b/spec_utf8 old mode 100644 new mode 100755 index f6e715f..d2c564b --- a/spec_utf8 +++ b/spec_utf8 @@ -2,7 +2,7 @@ debug = False -import os, os.path, re, sys, locale, StringIO +import os, os.path, re, sys, locale, StringIO, filecmp langs={ 'bg':'windows-1251', @@ -14,6 +14,7 @@ langs={ 'en':'iso8859-1', 'eo':'iso8859-3', 'es':'iso8859-1', + 'et':'iso8859-15', 'fi':'iso8859-1', 'fo':'iso8859-1', 'fr':'iso8859-1', @@ -114,7 +115,7 @@ def parse_spec(infile, outfile): elif not re_utf.search(enc): try: desc = unicode(r.group(2), enc).encode("UTF-8") - outline = "Summary(%s.UTF-8): %s\n" % (pure_lang, desc) + outline = "Summary(%s.UTF-8):\t%s\n" % (pure_lang, desc) except UnicodeDecodeError: outfile.write("#spec_utf8: transcoding error Summary(%s)\n" % (lang)) success = False @@ -127,22 +128,26 @@ def parse_spec(infile, outfile): outfile.write("%s"% (outline, )) return success -def main(argv): - print "Converting %s ..." % argv[1] - f = open(argv[1], 'r') +def main(spec): + tmp = spec + '.tmp' + print "Converting %s ..." % spec + f = open(spec, 'r') sio = StringIO.StringIO() sio.write(f.read()) f.close() sio.seek(0) - f = open(argv[1] + '.tmp', 'w') + f = open(tmp, 'w') if not parse_spec(sio, f): - sys.stderr.write(" Problems while converting %s.\n" % argv[1]) + sys.stderr.write(" Problems while converting %s.\n" % spec) f.close() - os.rename(argv[1] + '.tmp', argv[1]) + if filecmp.cmp(spec, tmp, False): + os.remove(tmp) + else: + os.rename(tmp, spec) if __name__ == "__main__": - if len(sys.argv) != 2: - sys.stderr.write("Usage: %s \n" % sys.argv[0]) - sys.exit(1) - main(sys.argv) - + if len(sys.argv) == 1: + sys.stderr.write("Usage: %s \n" % sys.argv[0]) + sys.exit(1) + for spec in sys.argv[1:]: + main(spec)