(filename)
| 66 | return data |
| 67 | |
| 68 | def parse_glibc_supported(filename): |
| 69 | |
| 70 | with open(filename, encoding='latin1') as f: |
| 71 | lines = list(f) |
| 72 | data = {} |
| 73 | for line in lines: |
| 74 | line = line.strip() |
| 75 | if not line: |
| 76 | continue |
| 77 | if line[:1] == '#': |
| 78 | continue |
| 79 | line = line.replace('/', ' ').strip() |
| 80 | line = line.rstrip('\\').rstrip() |
| 81 | words = line.split() |
| 82 | if len(words) != 2: |
| 83 | continue |
| 84 | alias, alias_encoding = words |
| 85 | # Lower-case locale |
| 86 | locale = alias.lower() |
| 87 | # Normalize encoding, if given |
| 88 | if '.' in locale: |
| 89 | lang, encoding = locale.split('.')[:2] |
| 90 | encoding = encoding.replace('-', '') |
| 91 | encoding = encoding.replace('_', '') |
| 92 | locale = lang + '.' + encoding |
| 93 | # Add an encoding to alias |
| 94 | alias, _, modifier = alias.partition('@') |
| 95 | alias = _locale._replace_encoding(alias, alias_encoding) |
| 96 | if modifier: |
| 97 | alias += '@' + modifier |
| 98 | data[locale] = alias |
| 99 | return data |
| 100 | |
| 101 | def pprint(data): |
| 102 | items = sorted(data.items()) |
no test coverage detected
searching dependent graphs…