1 | diff -r d4bb7a333937 scripts/nml_langcheck/languages.py
| 1 | http://ashematme.ru - ashematme.ru |
---|
2 | --- a/scripts/nml_langcheck/languages.py Fri Jan 30 13:10:17 2015 +0000
| | |
---|
3 | +++ b/scripts/nml_langcheck/languages.py Sat Jan 31 16:10:24 2015 +0000
| | |
---|
4 | @@ -29,10 +29,10 @@
| | |
---|
5 | def make_revline(rev, line):
| | |
---|
6 | if rev is None:
| | |
---|
7 | if line is None: return None
| | |
---|
8 | - return u"Line %d" % line
| | |
---|
9 | + return "Line %d" % line
| | |
---|
10 | else:
| | |
---|
11 | if line is None:
| | |
---|
12 | - return u"r%d" % rev
| | |
---|
13 | + return "r%d" % rev
| | |
---|
14 | return "at line %d, r%d" % (line, rev)
| | |
---|
15 |
| | |
---|
16 |
| | |
---|
17 | @@ -90,34 +90,34 @@
| | |
---|
18 | self.old_rev = None
| | |
---|
19 |
| | |
---|
20 | def write(self, fp):
| | |
---|
21 | - text = [u'%s:\n' % (self.str_name,)]
| | |
---|
22 | + text = ['%s:\n' % (self.str_name,)]
| | |
---|
23 | printed = False
| | |
---|
24 |
| | |
---|
25 | if self.trans_text is not None:
| | |
---|
26 | - if printed: text.append(u'\n')
| | |
---|
27 | + if printed: text.append('\n')
| | |
---|
28 | rv = make_revline(self.trans_rev, self.trans_line)
| | |
---|
29 | if rv is None:
| | |
---|
30 | - text.append(u'\tTranslation: "%s"\n' % self.trans_text)
| | |
---|
31 | + text.append('\tTranslation: "%s"\n' % self.trans_text)
| | |
---|
32 | else:
| | |
---|
33 | - text.append(u'\tTranslation %s: "%s"\n' % (rv, self.trans_text))
| | |
---|
34 | + text.append('\tTranslation %s: "%s"\n' % (rv, self.trans_text))
| | |
---|
35 | printed = True
| | |
---|
36 |
| | |
---|
37 | if self.master_text is not None:
| | |
---|
38 | - if printed: text.append(u'\n')
| | |
---|
39 | + if printed: text.append('\n')
| | |
---|
40 | rv = make_revline(self.master_rev, self.master_line)
| | |
---|
41 | if rv is None:
| | |
---|
42 | - text.append(u'\tCurrent source: "%s"\n' % self.master_text)
| | |
---|
43 | + text.append('\tCurrent source: "%s"\n' % self.master_text)
| | |
---|
44 | else:
| | |
---|
45 | - text.append(u'\tCurrent source %s: "%s"\n' % (rv, self.master_text))
| | |
---|
46 | + text.append('\tCurrent source %s: "%s"\n' % (rv, self.master_text))
| | |
---|
47 | printed = True
| | |
---|
48 |
| | |
---|
49 | if self.old_text is not None:
| | |
---|
50 | - if printed: text.append(u'\n')
| | |
---|
51 | + if printed: text.append('\n')
| | |
---|
52 | rv = make_revline(self.old_rev, None)
| | |
---|
53 | if rv is None:
| | |
---|
54 | - text.append(u'\tOld source: "%s"\n' % self.old_text)
| | |
---|
55 | + text.append('\tOld source: "%s"\n' % self.old_text)
| | |
---|
56 | else:
| | |
---|
57 | - text.append(u'\tOld source %s: "%s"\n' % (rv, self.old_text))
| | |
---|
58 | + text.append('\tOld source %s: "%s"\n' % (rv, self.old_text))
| | |
---|
59 | printed = True
| | |
---|
60 |
| | |
---|
61 |
| | |
---|
62 | @@ -159,11 +159,11 @@
| | |
---|
63 | @rtype: C{unicode}
| | |
---|
64 | """
| | |
---|
65 | if self.gender is None: return self.name
| | |
---|
66 | - return self.name + u"." + self.gender
| | |
---|
67 | + return self.name + "." + self.gender
| | |
---|
68 |
| | |
---|
69 |
| | |
---|
70 | # Pattern to match annotation revision.
| | |
---|
71 | -re_annot = re.compile(u' *(\\d+):')
| | |
---|
72 | +re_annot = re.compile(' *(\\d+):')
| | |
---|
73 | utf8_bom = codecs.BOM_UTF8.decode('utf-8')
| | |
---|
74 |
| | |
---|
75 | def get_annotated(fname, revision):
| | |
---|
76 | @@ -186,12 +186,12 @@
| | |
---|
77 | p = subprocess.Popen(cmd, stdout = subprocess.PIPE, stderr = subprocess.PIPE)
| | |
---|
78 | out_data, err_data = p.communicate()
| | |
---|
79 | if err_data != "":
| | |
---|
80 | - msg= u'Warning: Mercurial command \"%s\" failed (message: "%s")' \
| | |
---|
81 | - % (u" ".join(cmd), err_data)
| | |
---|
82 | + msg= 'Warning: Mercurial command \"%s\" failed (message: "%s")' \
| | |
---|
83 | + % (" ".join(cmd), err_data)
| | |
---|
84 | raise LanguageReadError(msg)
| | |
---|
85 |
| | |
---|
86 | out_data = out_data.decode('utf-8')
| | |
---|
87 | - for idx, line in enumerate(out_data.split(u'\n')):
| | |
---|
88 | + for idx, line in enumerate(out_data.split('\n')):
| | |
---|
89 | if idx == 0 and line[0] == utf8_bom: line = line[1:]
| | |
---|
90 | line = line.rstrip()
| | |
---|
91 | m = re_annot.match(line)
| | |
---|
92 | @@ -201,7 +201,7 @@
| | |
---|
93 | if idx == 0 and len(line) > i and line[i] == utf8_bom: i = i + 1
| | |
---|
94 |
| | |
---|
95 | if len(line) == i:
| | |
---|
96 | - yield int(m.group(1)), idx + 1, u''
| | |
---|
97 | + yield int(m.group(1)), idx + 1, ''
| | |
---|
98 | else:
| | |
---|
99 | yield int(m.group(1)), idx + 1, line[i:]
| | |
---|
100 |
| | |
---|
101 | @@ -227,9 +227,9 @@
| | |
---|
102 | texts = []
| | |
---|
103 | for rev, num, text in get_annotated(fname, revision):
| | |
---|
104 | # cases!!
| | |
---|
105 | - if len(text) == 0 or text[0] == u'#': continue
| | |
---|
106 | + if len(text) == 0 or text[0] == '#': continue
| | |
---|
107 |
| | |
---|
108 | - i, j = text.find(u' '), text.find(u'\t')
| | |
---|
109 | + i, j = text.find(' '), text.find('\t')
| | |
---|
110 | if i < 0:
| | |
---|
111 | es = j
| | |
---|
112 | elif j < 0:
| | |
---|
113 | @@ -238,24 +238,24 @@
| | |
---|
114 | es = min([i, j])
| | |
---|
115 |
| | |
---|
116 | if es < 0:
| | |
---|
117 | - raise LanguageReadError(u"Invalid string-name at line %d in %r (text %r)"
| | |
---|
118 | + raise LanguageReadError("Invalid string-name at line %d in %r (text %r)"
| | |
---|
119 | % (num, fname, text))
| | |
---|
120 | - j = text.find(u'.')
| | |
---|
121 | + j = text.find('.')
| | |
---|
122 | if j > 0 and j < es:
| | |
---|
123 | name, gender = text[:j], text[j + 1:es]
| | |
---|
124 | else:
| | |
---|
125 | name, gender = text[:es], None
| | |
---|
126 |
| | |
---|
127 | - i = text.find(u':')
| | |
---|
128 | + i = text.find(':')
| | |
---|
129 | if i < 0:
| | |
---|
130 | - raise LanguageReadError(u"Missing colon at line %d in %r (text %r)"
| | |
---|
131 | + raise LanguageReadError("Missing colon at line %d in %r (text %r)"
| | |
---|
132 | % (num, fname, text))
| | |
---|
133 |
| | |
---|
134 | text = text[i + 1:]
| | |
---|
135 | tid = (name, gender)
| | |
---|
136 |
| | |
---|
137 | if tid in line_numbers:
| | |
---|
138 | - raise LanguageReadError(u"String %r is defined twice in %r (at lines %d and %d)"
| | |
---|
139 | + raise LanguageReadError("String %r is defined twice in %r (at lines %d and %d)"
| | |
---|
140 | % (name, fname, line_numbers[name], num))
| | |
---|
141 |
| | |
---|
142 | line_numbers[tid] = num
| | |
---|
143 | @@ -304,8 +304,8 @@
| | |
---|
144 |
| | |
---|
145 | try:
| | |
---|
146 | data = make_mapping(read_lang(master_name, revision))
| | |
---|
147 | - except LanguageReadError, exc:
| | |
---|
148 | - print "Warning: Retrieving version information failed: %r" % str(exc.err)
| | |
---|
149 | + except LanguageReadError as exc:
| | |
---|
150 | + print("Warning: Retrieving version information failed: %r" % str(exc.err))
| | |
---|
151 | return None
| | |
---|
152 |
| | |
---|
153 | cached_master_files[revision] = data
| | |
---|
154 | @@ -357,7 +357,7 @@
| | |
---|
155 | This may reduce access to old master language revisions.
| | |
---|
156 | """
| | |
---|
157 | translation = make_mapping(translation) # Convert translation to a dict
| | |
---|
158 | - t_names = set(translation.iterkeys()) # names in the translation that have not been processed.
| | |
---|
159 | + t_names = set(translation.keys()) # names in the translation that have not been processed.
| | |
---|
160 |
| | |
---|
161 | missing = [] # Strings missing in the translation.
| | |
---|
162 | outdated = [] # Strings that need to be updated.
| | |
---|
163 | diff -r d4bb7a333937 scripts/nml_langcheck/main.py
| | |
---|
164 | --- a/scripts/nml_langcheck/main.py Fri Jan 30 13:10:17 2015 +0000
| | |
---|
165 | +++ b/scripts/nml_langcheck/main.py Sat Jan 31 16:10:24 2015 +0000
| | |
---|
166 | @@ -30,7 +30,7 @@
| | |
---|
167 | - Release of first version, cl 2.0
| | |
---|
168 |
| | |
---|
169 | """
| | |
---|
170 | -import os, sys, getopt, ConfigParser
| | |
---|
171 | +import os, sys, getopt, configparser
| | |
---|
172 | from nml_langcheck import output, languages
| | |
---|
173 |
| | |
---|
174 | _version = '2.3'
| | |
---|
175 | @@ -120,7 +120,7 @@
| | |
---|
176 | usage(sys.stdout)
| | |
---|
177 | sys.exit(0)
| | |
---|
178 | else:
| | |
---|
179 | - print "Warning: Skipped the --help option."
| | |
---|
180 | + print("Warning: Skipped the --help option.")
| | |
---|
181 | return True
| | |
---|
182 |
| | |
---|
183 | if opt in ('-e', '--ext'):
| | |
---|
184 | @@ -147,7 +147,7 @@
| | |
---|
185 | if allow_cfg:
| | |
---|
186 | self.load_cfg(arg)
| | |
---|
187 | else:
| | |
---|
188 | - print "Warning: Skipped the --cfg option."
| | |
---|
189 | + print("Warning: Skipped the --cfg option.")
| | |
---|
190 | return True
| | |
---|
191 |
| | |
---|
192 | return False
| | |
---|
193 | @@ -159,7 +159,7 @@
| | |
---|
194 | @param fname: Name of the INI file.
| | |
---|
195 | @type fname: C{str}
| | |
---|
196 | """
| | |
---|
197 | - cfg_parser = ConfigParser.SafeConfigParser()
| | |
---|
198 | + cfg_parser = configparser.SafeConfigParser()
| | |
---|
199 | cfg_parser.read([fname])
| | |
---|
200 | if not cfg_parser.has_section('options'): return
| | |
---|
201 |
| | |
---|
202 | @@ -169,7 +169,7 @@
| | |
---|
203 | msg = "Unknown option '--%s' encountered in option file '%s'" \
| | |
---|
204 | % (opt, fname)
| | |
---|
205 |
| | |
---|
206 | - print "Warning: " + msg
| | |
---|
207 | + print("Warning: " + msg)
| | |
---|
208 |
| | |
---|
209 |
| | |
---|
210 | def set_args(self, args):
| | |
---|
211 | @@ -254,8 +254,8 @@
| | |
---|
212 | try:
| | |
---|
213 | opts, args = getopt.getopt(sys.argv[1:],
| | |
---|
214 | CmdLine.short_opts, CmdLine.long_opts)
| | |
---|
215 | - except getopt.GetoptError, err:
| | |
---|
216 | - print "nml_langcheck: " + str(err)
| | |
---|
217 | + except getopt.GetoptError as err:
| | |
---|
218 | + print("nml_langcheck: " + str(err))
| | |
---|
219 | usage(sys.stdout)
| | |
---|
220 | sys.exit(2)
| | |
---|
221 |
| | |
---|
222 | @@ -272,8 +272,8 @@
| | |
---|
223 |
| | |
---|
224 | err = cmd_line.get_error()
| | |
---|
225 | if err is not None:
| | |
---|
226 | - print "nml_langcheck: " + err
| | |
---|
227 | - print
| | |
---|
228 | + print("nml_langcheck: " + err)
| | |
---|
229 | + print()
| | |
---|
230 | usage(sys.stdout)
| | |
---|
231 | sys.exit(1)
| | |
---|
232 |
| | |
---|
233 | @@ -305,8 +305,8 @@
| | |
---|
234 | """
| | |
---|
235 | try:
| | |
---|
236 | return languages.read_lang(fname, None)
| | |
---|
237 | - except languages.LanguageReadError, exc:
| | |
---|
238 | - print "Language file \"%s\" cannot be found: %r" % (fname, str(exc.err))
| | |
---|
239 | + except languages.LanguageReadError as exc:
| | |
---|
240 | + print("Language file \"%s\" cannot be found: %r" % (fname, str(exc.err)))
| | |
---|
241 | return None
| | |
---|
242 |
| | |
---|
243 |
| | |
---|
244 | @@ -316,7 +316,7 @@
| | |
---|
245 |
| | |
---|
246 | master_data = get_language(cmd_line.master)
| | |
---|
247 | if master_data is None:
| | |
---|
248 | - print "Quitting!"
| | |
---|
249 | + print("Quitting!")
| | |
---|
250 | sys.exit(1)
| | |
---|
251 |
| | |
---|
252 | index_data = output.IndexData(cmd_line.transl_url, cmd_line.index_name, len(master_data))
| | |
---|
253 | @@ -324,11 +324,11 @@
| | |
---|
254 |
| | |
---|
255 | for src, lang_name, dest in cmd_line.get_jobs():
| | |
---|
256 | if cmd_line.verbose > 0:
| | |
---|
257 | - print "%r -> %r" % (src, dest)
| | |
---|
258 | + print("%r -> %r" % (src, dest))
| | |
---|
259 |
| | |
---|
260 | translation = get_language(src)
| | |
---|
261 | if translation is None:
| | |
---|
262 | - print "Quitting!"
| | |
---|
263 | + print("Quitting!")
| | |
---|
264 | sys.exit(1)
| | |
---|
265 |
| | |
---|
266 | missing, outdated, obsolete = languages.compare_langs(master_data, translation)
| | |
---|
267 | diff -r d4bb7a333937 src/render_docs.py
| | |
---|
268 | --- a/src/render_docs.py Fri Jan 30 13:10:17 2015 +0000
| | |
---|
269 | +++ b/src/render_docs.py Sat Jan 31 16:10:24 2015 +0000
| | |
---|
270 | @@ -6,7 +6,7 @@
| | |
---|
271 | FIRS 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.
| | |
---|
272 | See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with FIRS. If not, see <http://www.gnu.org/licenses/>.
| | |
---|
273 | """
| | |
---|
274 | -print "[PYTHON] render docs"
| | |
---|
275 | +print("[PYTHON] render docs")
| | |
---|
276 |
| | |
---|
277 | import codecs # used for writing files - more unicode friendly than standard open() module
| | |
---|
278 |
| | |
---|
279 | @@ -148,7 +148,7 @@
| | |
---|
280 | # convenient to have items sorted
| | |
---|
281 | result[industry_key]['economies'] = sorted(result[industry_key]['economies'], key=lambda economy: self.get_economy_name(economy))
| | |
---|
282 | # return a list, sorted by economies (only need first economy entry in each list of economies)
| | |
---|
283 | - return sorted(result.values(), key = lambda combo: self.get_economy_name(combo['economies'][0]))
| | |
---|
284 | + return sorted(list(result.values()), key = lambda combo: self.get_economy_name(combo['economies'][0]))
| | |
---|
285 |
| | |
---|
286 |
| | |
---|
287 | def industry_find_cargos_active_in_economy_for_industry(self, industry, economy, accept_or_produce):
| | |
---|
288 | @@ -177,7 +177,7 @@
| | |
---|
289 | # convenient to have items sorted
| | |
---|
290 | result[cargo_key]['economies'] = sorted(result[cargo_key]['economies'], key=lambda economy: self.get_economy_name(economy))
| | |
---|
291 | # return a list, sorted by economies (only need first economy entry in each list of economies)
| | |
---|
292 | - return sorted(result.values(), key = lambda combo: self.get_economy_name(combo['economies'][0]))
| | |
---|
293 | + return sorted(list(result.values()), key = lambda combo: self.get_economy_name(combo['economies'][0]))
| | |
---|
294 |
| | |
---|
295 |
| | |
---|
296 | def get_active_nav(self, doc_name, nav_link):
| | |
---|
297 | diff -r d4bb7a333937 src/render_pnml.py
| | |
---|
298 | --- a/src/render_pnml.py Fri Jan 30 13:10:17 2015 +0000
| | |
---|
299 | +++ b/src/render_pnml.py Sat Jan 31 16:10:24 2015 +0000
| | |
---|
300 | @@ -5,7 +5,7 @@
| | |
---|
301 | See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with FIRS. If not, see <http://www.gnu.org/licenses/>.
| | |
---|
302 | """
| | |
---|
303 |
| | |
---|
304 | -print "[PYTHON] render pnml"
| | |
---|
305 | +print("[PYTHON] render pnml")
| | |
---|
306 |
| | |
---|
307 | import codecs # used for writing files - more unicode friendly than standard open() module
| | |
---|
308 |
| | |
---|
309 | @@ -82,7 +82,7 @@
| | |
---|
310 | pool.join()
| | |
---|
311 |
| | |
---|
312 | # linker
| | |
---|
313 | - print "Linking"
| | |
---|
314 | + print("Linking")
| | |
---|
315 | template = header_item_templates['firs.pypnml']
| | |
---|
316 | firs_pnml = codecs.open(os.path.join(firs.generated_files_path, 'firs.pnml'), 'w','utf8')
| | |
---|
317 | firs_pnml.write(utils.unescape_chameleon_output(template(registered_industries=registered_industries, global_constants=global_constants,
| | |
---|
318 | diff -r d4bb7a333937 src/utils.py
| | |
---|
319 | --- a/src/utils.py Fri Jan 30 13:10:17 2015 +0000
| | |
---|
320 | +++ b/src/utils.py Sat Jan 31 16:10:24 2015 +0000
| | |
---|
321 | @@ -18,7 +18,7 @@
| | |
---|
322 |
| | |
---|
323 |
| | |
---|
324 | def parse_base_lang():
| | |
---|
325 | - print "[PARSE BASE LANG & EXTRA STRINGS] utils.py"
| | |
---|
326 | + print("[PARSE BASE LANG & EXTRA STRINGS] utils.py")
| | |
---|
327 |
| | |
---|
328 | import os.path
| | |
---|
329 | currentdir = os.curdir
| | |
---|
330 | @@ -54,4 +54,4 @@
| | |
---|
331 | def echo_message(message):
| | |
---|
332 | # use to raise messages from templates to standard out (can't print directly from template render)
| | |
---|
333 | # magically wraps these messages in ANSI colour to make them visible - they are only intended for noticeable messages, not general output
| | |
---|
334 | - print '\033[33m' + message + '\033[0m'
| | |
---|
335 | + print('\033[33m' + message + '\033[0m') | | |
---|