fi-notes/transform-links.py

60 lines
2.5 KiB
Python

import os
TARGET_DIR = "src/content/docs/szmgr"
links = {
"zaklady_vizualizace": "PGV01_zaklady_vizualizace",
"metody_vizualizace": "PGV02_metody_vizualizace",
"zaklady_pocitatcove_grafiky": "PGV03_zaklady_pocitatcove_grafiky",
"geometricke_algoritmy": "PGV04_geometricke_algoritmy",
"deleni_prostoru_a_sceny": "PGV05_deleni_prostoru_a_sceny",
"vykreslovani_objemovych_dat": "PGV06_vykreslovani_objemovych_dat",
"modely_osvetleni": "PGV07_modely_osvetleni",
"real_time_rendering": "PGV08_real_time_rendering",
"minimalizace_energie": "PGV09_minimalizace_energie",
"zpracovani_obrazu_pomoci_PDE": "PGV10_zpracovani_obrazu_pomoci_PDE",
"algoritmy-a-datove-struktury": "SZP01_algoritmy",
"numericke-metody": "SZP02_numericke_metody",
"statistika": "SZP03_statistika",
"3d-modelovani-a-datove-struktury": "SZP04_3d_modelovani",
"krivky-a-povrchy": "SZP05_krivky_a_povrchy",
"strojove-uceni": "SZP06_strojove_uceni",
"grafy-a-grafove-algoritmy": "SZP07_grafy",
"modelovani-a-projekce": "SZP08_modelovani_a_projekce",
"zpracovani-rastroveho-obrazu": "SZP09_zpracovani_obrazu",
"analyza-rastroveho-obrazu": "SZP10_analyza_obrazu",
"graficke-principy-ve-vyvoji-her": "VPH01_graficke_principy_ve_vyvoji_her",
"pokrocila-pocitacova-grafika": "VPH01_pokrocila_grafika",
"fyzikalni-principy-ve-vyvoji her": "VPH02_fyzikalni_principy_ve_vyvoji_her",
"graficke-a-fyzikalni-principy": "VPH02_graficke_a_fyzikalni_principy",
"herni-design-i": "VPH03_herni_design_i",
"herni-design-ii": "VPH04_herni_design_ii",
"vyvoj-her": "VPH05_vyvoj_her",
"umela-inteligence-v-pocitacovych-hrach": "VPH06_ai_ve_hrach",
"renderovani-s-vyuzitim-gpu": "VPH07_gpu_rendering",
"modelovani-3d-postav": "VPH08_modelovani_3d_postav",
}
files = [f for f in os.listdir(TARGET_DIR) if f.endswith(".md")]
for f in files:
print(f"\t- {f}")
lines = []
with open(os.path.join(TARGET_DIR, f), "r") as file:
lines = file.readlines()
for i in range(len(lines) - 1):
l = lines[i]
for url in links.keys():
search = f"../{url}"
if search in l:
lines[i] = l.replace(search, f"../{links[url].lower()}")
l = lines[i]
for filename in links.values():
if filename in l:
lines[i] = l.replace(filename, filename.lower())
with open(os.path.join(TARGET_DIR, f), "w") as file:
file.writelines(lines)