|
1 | | -import os, re, sys |
| 1 | +from pathlib import Path |
| 2 | +import re, sys |
2 | 3 | from translate import Translator |
3 | 4 | from . import data, log |
4 | 5 |
|
@@ -27,33 +28,34 @@ def create_translations(cli, target_msgs, lang_code): |
27 | 28 | log.trunc(f'Translation failed for key "{key}" in {lang_code}/{cli.msgs_filename}: {err}') |
28 | 29 | translated_msg = original_msg |
29 | 30 | translated_msgs[key] = { 'message': translated_msg } |
30 | | - |
31 | | - else : translated_msgs[key] = target_msgs[key] |
| 31 | + else: |
| 32 | + translated_msgs[key] = target_msgs[key] |
32 | 33 |
|
33 | 34 | return translated_msgs |
34 | 35 |
|
35 | 36 | def write_translations(cli): |
36 | | - |
37 | 37 | langs_added, langs_skipped, langs_translated, langs_not_translated = [], [], [], [] |
| 38 | + |
38 | 39 | for lang_code in cli.config.target_langs: |
39 | 40 | lang_added, lang_skipped, lang_translated = False, False, False |
40 | 41 | lang_folder = lang_code.replace('-', '_') |
41 | 42 |
|
42 | 43 | if lang_code.startswith('en'): # skip EN locales |
43 | 44 | print(f'\n{log.colors.gry}Skipped {lang_folder}/{cli.msgs_filename}...{log.colors.nc}', end='') |
44 | | - langs_skipped.append(lang_code) ; langs_not_translated.append(lang_code) ; continue |
| 45 | + langs_skipped.append(lang_code) ; langs_not_translated.append(lang_code) |
| 46 | + continue |
45 | 47 |
|
46 | 48 | if '-' in lang_code: # cap suffix |
47 | 49 | sep_idx = lang_folder.index('_') |
48 | 50 | lang_folder = lang_folder[:sep_idx] + '_' + lang_folder[sep_idx+1:].upper() |
49 | 51 |
|
50 | | - lang_folder_path = os.path.join(cli.config.locales_dir, lang_folder) |
51 | | - msgs_path = os.path.join(lang_folder_path, cli.msgs_filename) |
52 | | - if os.path.exists(msgs_path): |
| 52 | + lang_folder_path = Path(cli.config.locales_dir) / lang_folder |
| 53 | + msgs_path = lang_folder_path / cli.msgs_filename |
| 54 | + if msgs_path.exists(): |
53 | 55 | msgs = data.json.read(msgs_path) |
54 | 56 | else: |
55 | 57 | msgs = {} |
56 | | - os.makedirs(lang_folder_path, exist_ok=True) |
| 58 | + lang_folder_path.mkdir(parents=True, exist_ok=True) |
57 | 59 | langs_added.append(lang_code) ; lang_added = True |
58 | 60 |
|
59 | 61 | log.info(f"{ 'Adding' if not msgs else 'Updating' } {lang_folder}/{cli.msgs_filename}...", end='') |
|
0 commit comments