| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
A cleanup pass over org-drill internals, squashed from the refactor/wave3-cleanup branch. No behavior change. Each step kept the existing tests green and added its own.
I shared two duplicated helpers across the language card getters: org-drill--read-property-string and org-drill--face-from-alist.
I factored the cloze body-scan out of the two multicloze presenters into org-drill--cloze-body-bounds, org-drill--count-cloze-matches, and org-drill--hide-cloze-by-index, so each presenter just picks which indices to hide.
I pulled the presenter resolution and the four-way result classification out of org-drill-entry-f into org-drill--resolve-presenter and org-drill--classify-presentation-result, untangling the pivot of every drill iteration.
I split the 37 defcustoms (and the three cloze faces) into four customize sub-groups (display, algorithm, session, leech) so customize-group org-drill is navigable. There's no leitner group because the Leitner settings are defvars.
I documented the 22 defuns that had no docstring, rewrote the corrupted org-drill-presentation-prompt-in-mini-buffer docstring, and switched eleven docstrings to the imperative "Return" (issue #2).
|
|
|
14 ERT tests covering:
- org-drill-explain-entry-p: with/without :explain: tag, no-inherit
flag rejects parent's tag
- org-drill-end-of-entry-pos: single-heading and multi-heading subtree
bounds
- org-drill-get-verb-conjugation-info: full property read, tense-only
(mood optional), missing-required errors, tense-color highlight face
- org-drill-get-noun-info: full property read, missing-required errors,
feminine-gender orchid color from alist, unknown-gender red fallback
|