mirror of
https://github.com/Ascyii/typstar.git
synced 2026-01-01 05:24:24 -05:00
fix(anki): no recursive config dir for single file
This commit is contained in:
@@ -9,20 +9,20 @@ class RecursiveConfigParser:
|
|||||||
targets: set[str]
|
targets: set[str]
|
||||||
results: dict[str, dict[Path, str]]
|
results: dict[str, dict[Path, str]]
|
||||||
|
|
||||||
def __init__(self, dir, targets):
|
def __init__(self, dir, targets, recursive=True):
|
||||||
self.dir = dir
|
self.dir = dir
|
||||||
self.targets = set(targets)
|
self.targets = set(targets)
|
||||||
self.results = defaultdict(dict)
|
self.results = defaultdict(dict)
|
||||||
self._parse_recursive()
|
self._parse_dirs(recursive)
|
||||||
|
|
||||||
def _parse_recursive(self):
|
def _parse_dirs(self, recursive=True):
|
||||||
files = []
|
files = []
|
||||||
for target in self.targets:
|
for target in self.targets:
|
||||||
files.extend(
|
if recursive:
|
||||||
glob(
|
dir = f"{self.dir}/**/{target}"
|
||||||
f"{self.dir}/**/{target}", include_hidden=target.startswith("."), recursive=True
|
else:
|
||||||
)
|
dir = f"{self.dir}/{target}"
|
||||||
)
|
files.extend(glob(dir, include_hidden=target.startswith("."), recursive=recursive))
|
||||||
for file in files:
|
for file in files:
|
||||||
file = Path(file)
|
file = Path(file)
|
||||||
if file.name in self.targets:
|
if file.name in self.targets:
|
||||||
|
|||||||
@@ -126,7 +126,9 @@ class FlashcardParser:
|
|||||||
f"Parsing flashcards in {scan_dir if single_file is None else single_file} ...",
|
f"Parsing flashcards in {scan_dir if single_file is None else single_file} ...",
|
||||||
flush=True,
|
flush=True,
|
||||||
)
|
)
|
||||||
configs = RecursiveConfigParser(root_dir, {".anki", ".anki.typ"})
|
configs = RecursiveConfigParser(
|
||||||
|
root_dir, {".anki", ".anki.typ"}, recursive=single_file is None
|
||||||
|
)
|
||||||
|
|
||||||
for file in glob(f"{scan_dir}/**/**.typ", recursive=True):
|
for file in glob(f"{scan_dir}/**/**.typ", recursive=True):
|
||||||
file = Path(file)
|
file = Path(file)
|
||||||
|
|||||||
Reference in New Issue
Block a user