Merge remote-tracking branch 'origin/sub_laptop_5' into sub_laptop_8
This commit is contained in:
@@ -120,21 +120,24 @@ def delete(folder: str | Path, key: str) -> None:
|
||||
|
||||
|
||||
# ── 맞춤 기억 ─────────────────────────────────────────────────────────
|
||||
def memory(folder: str | Path) -> dict[str, dict[str, Any]]:
|
||||
"""층 맞춤 기억 `{줄 열쇠: 확정}` — 없으면 빈 것."""
|
||||
doc = _load(_dir(folder) / f"{MEMORY}.json")
|
||||
def memory(folder: str | Path, name: str = MEMORY) -> dict[str, dict[str, Any]]:
|
||||
"""층 맞춤 기억 `{줄 열쇠: 확정}` — 없으면 빈 것 ·
|
||||
`name` = 기억 파일(내역 잇기 707-4 = 「내역맞춤」)."""
|
||||
doc = _load(_dir(folder) / f"{name}.json")
|
||||
got = doc.get("줄") if isinstance(doc, dict) else None
|
||||
return got if isinstance(got, dict) else {}
|
||||
|
||||
|
||||
def remember(folder: str | Path, entries: dict[str, dict[str, Any] | None]) -> dict[str, Any]:
|
||||
def remember(
|
||||
folder: str | Path, entries: dict[str, dict[str, Any] | None], name: str = MEMORY
|
||||
) -> dict[str, Any]:
|
||||
"""기억 더함 · 바꿈(값 None = 지움) → 새 기억 전부."""
|
||||
with _LOCK:
|
||||
got = memory(folder)
|
||||
got = memory(folder, name)
|
||||
for key, value in entries.items():
|
||||
if value is None:
|
||||
got.pop(key, None)
|
||||
else:
|
||||
got[key] = value
|
||||
atomic_write_json(_dir(folder) / f"{MEMORY}.json", {"줄": got})
|
||||
atomic_write_json(_dir(folder) / f"{name}.json", {"줄": got})
|
||||
return got
|
||||
|
||||
Reference in New Issue
Block a user