unicode-bidi-mirroring 0.4.0

Unicode Bidi Mirroring property detection
Documentation
#!/usr/bin/env python3

import urllib.request
import os

URL = 'https://www.unicode.org/Public/UNIDATA/BidiMirroring.txt'
FILE_NAME = 'BidiMirroring.txt'

if not os.path.exists(FILE_NAME):
    urllib.request.urlretrieve(URL, FILE_NAME)

chars_before = []
chars_after = []
with open(FILE_NAME) as f:
    for line in f:
        line = line.strip()

        if not line:
            continue

        if line.startswith('#'):
            continue

        line = line[:line.index('#')]
        line = line.replace(' ', '')

        before, after = line.split(';')
        chars_before.append(before)
        chars_after.append(after)

# Deduplicate 0028=>0029 0029=>0028 pairs.
new_chars_before = []
new_chars_after = []
for i in range(0, len(chars_before)):
    if not chars_before[i] in new_chars_after:
        new_chars_before.append(chars_before[i])
        new_chars_after.append(chars_after[i])

for i in range(0, len(new_chars_before)):
    print(f'(\'\\u{{{new_chars_before[i]}}}\', \'\\u{{{new_chars_after[i]}}}\'),')