import os import shutil import re TARGET = "assets/slike/glavna_referenca" RULES = [ (r"(rabbit|sheep|cow|pig|bear|wolf|dog|cat|goat|llama|deer|ant|insect|zival|animal|zajec|ovca|krava|pes|macka)", "Zivali"), (r"(house|building|wall|ruin|barn|farm|church|tower|shop|store|zgradba|hisa|hiลกa)", "Zgradbe"), (r"(kai|ana|gronk|npc|man|woman|boy|girl|farmer|merchant|priest|character|oseba)", "NPCs"), (r"(zombie|undead|monster|boss|kreatura|zombi)", "Kreature"), (r"(tree|bush|flower|plant|crop|rastlina|drevo)", "Rastline"), (r"(item|tool|weapon|food|predmet|orodje)", "Predmeti"), (r"(grass|ground|water|stone|tile|teren|tla)", "Teren") ] def sort_notes(): print(f"๐Ÿš€ SORTING NOTES (.md, .txt) in {TARGET}...") if not os.path.exists(TARGET): return for filename in os.listdir(TARGET): if not os.path.isfile(os.path.join(TARGET, filename)): continue # Target only text files if not filename.lower().endswith(('.md', '.txt', '.json', '.xml')): continue fname_lower = filename.lower() target_sub = "_DOKUMENTACIJA" # Default for notes # Try to match context for pattern, folder in RULES: if re.search(pattern, fname_lower): target_sub = folder break dest_dir = os.path.join(TARGET, target_sub) if not os.path.exists(dest_dir): os.makedirs(dest_dir) try: shutil.move(os.path.join(TARGET, filename), os.path.join(dest_dir, filename)) print(f"๐Ÿ“„ Moved {filename} -> {target_sub}") except Exception as e: print(e) if __name__ == "__main__": sort_notes()