small fixes

This commit is contained in:
2026-08-08 16:47:09 +02:00
parent f345f8bb4f
commit c535febbc4
6 changed files with 54 additions and 47 deletions
+7 -18
View File
@@ -1,6 +1,6 @@
import shlex
import re
import os
import utils
import subprocess
import sys
import argparse
@@ -119,7 +119,7 @@ PROMPT_3 = """I am providing:
2. The source code of the exam questions (`enonce` file).
Your task:
Extract important information necessary to understand the questions (e.g., definitions of objects, global notations, hypotheses, context) that are NOT part of the question texts themselves. Often, this information can be in a previous \\item that is not itself a question, but contains the question items.
Extract important information necessary to understand the questions (e.g., definitions of objects, global notations, hypotheses, context) that are NOT part of the question texts themselves. Often, this information can be in a previous \\item that is not itself a question, but contains the question items.
For example, given LaTeX code like
@@ -148,7 +148,9 @@ def process_exam(folder_path: str, restart: bool = False):
folder = Path(folder_path)
cache_dir = folder / "Cache"
tmp_dir = folder / "Tmp"
cache_dir.mkdir(exist_ok=True)
tmp_dir.mkdir(exist_ok=True)
cache_q_file = cache_dir / "gemini_questions.json"
cache_s_file = cache_dir / "gemini_solutions.json"
@@ -341,8 +343,8 @@ def process_exam(folder_path: str, restart: bool = False):
# ==========================================
# INITIAL GROUPING COMPUTATION
# ==========================================
items_file = folder / "exam_items.txt"
full_items_file = folder / "exam_items_full.txt"
items_file = tmp_dir / "exam_items.txt"
full_items_file = tmp_dir / "exam_items_full.txt"
trunc_map = {}
# --- INITIAL GROUPING COMPUTATION ---
@@ -469,20 +471,7 @@ def process_exam(folder_path: str, restart: bool = False):
# --- OPEN EDITOR AND PARSE ---
while True:
print("Opening items file for editing...")
editor = os.environ.get("EDITOR")
try:
if editor:
subprocess.run(shlex.split(editor) + [str(items_file)])
else:
if sys.platform.startswith("linux"):
subprocess.run(["xdg-open", str(items_file)])
elif sys.platform == "darwin":
subprocess.run(["open", str(items_file)])
else:
os.startfile(str(items_file))
input("Press ENTER here once you have saved and closed the text file...")
except Exception as e:
print(f"Error running editor: {e}")
utils.edit_file_and_enter(items_file)
print(f"Parsing edited items from {items_file.name}...")
with open(items_file, "r", encoding="utf-8") as f: