Source code for GUIBRUSHR.scripts.edit_yaml

# GUIBRUSHR/scripts/edit_yaml.py
"""
Interactive YAML editor launcher for GUIBRUSHR.
Opens a menu to select and edit configuration YAML files.
"""

import os
import subprocess
from pathlib import Path


def _get_yaml_dir() -> Path:
    # __file__ = site-packages/GUIBRUSHR/scripts/edit_yaml.py
    return Path(__file__).parent.parent.resolve() / "Files" / "Configuration_Yaml"


[docs] def edit_yaml_cli(): yaml_dir = _get_yaml_dir() yaml_files = sorted(yaml_dir.glob("*.yaml")) if not yaml_files: print("No YAML files found in Configuration_Yaml/") return print("\n" + "=" * 50) print("GUIBRUSHR - Configuration YAML Editor") print("=" * 50) for i, f in enumerate(yaml_files, start=1): print(f" {i}. {f.name}") print(" 0. Exit") print("=" * 50) try: choice = int(input("\nSelect file to edit: ")) except ValueError: print("Invalid input.") return if choice == 0: return if not (1 <= choice <= len(yaml_files)): print(f"Invalid choice. Please select between 1 and {len(yaml_files)}.") return selected = yaml_files[choice - 1] print(f"\nOpening {selected.name}...") subprocess.run(["nano", str(selected)])
if __name__ == "__main__": edit_yaml_cli()