<feed xmlns='http://www.w3.org/2005/Atom'>
<title>org-drill/tests/test-org-drill-prompt-and-misc.el, branch main</title>
<subtitle>Spaced-repetition flashcards for Org Mode
</subtitle>
<id>https://git.cjennings.net/org-drill/atom?h=main</id>
<link rel='self' href='https://git.cjennings.net/org-drill/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/org-drill/'/>
<updated>2026-05-31T16:18:49+00:00</updated>
<entry>
<title>feat: optionally show the card's outline path in the drill prompt</title>
<updated>2026-05-31T16:18:49+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-05-31T16:18:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/org-drill/commit/?id=e201ba696ed27e407d934321a5f4c5874ea4fee5'/>
<id>urn:sha1:e201ba696ed27e407d934321a5f4c5874ea4fee5</id>
<content type='text'>
A new defcustom org-drill-show-outline-path-during-drill (default off) prepends the card's ancestor path to the mini-buffer prompt, for example [Spanish &gt; Greetings], so during a drill you can see where the current card sits in the deck. With it off the prompt is byte-for-byte unchanged.

I ported this from m.galimski's fork (commit c6d0c850) and gated it behind the defcustom rather than leaving it always on. The path comes from org-get-outline-path through a small org-drill--outline-path-string helper. Tests cover the helper (nested and top-level), the prompt with the switch on and off, and the default value.
</content>
</entry>
<entry>
<title>refactor: thread card-state struct through the item-data round-trip</title>
<updated>2026-05-28T01:47:35+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-05-28T01:47:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/org-drill/commit/?id=39d01b75ac679410821ce5e16c09ec6b7799f791'/>
<id>urn:sha1:39d01b75ac679410821ce5e16c09ec6b7799f791</id>
<content type='text'>
Second step of #147. get-item-data now returns an org-drill-card-state and store-item-data takes one, so the six recall fields move as named slots instead of a positional list. The three call sites (smart-reschedule, hypothetical-next-review-date, copy-scheduling-to-marker) read scheduler inputs through accessors and build a struct for the store, which removes the hand re-ordering between the get-shape and the store-shape.

Behavior is unchanged. The legacy LEARN_DATA read path and the virgin-item sentinel are preserved field-for-field, and store takes just the struct because its last-interval slot already holds the interval to persist. The schedulers still take positional args; they adopt the struct in the following commits.

I updated the round-trip, integration, and setup-helper tests to build and read the struct via a small list-view helper, so the existing expected-value assertions stay readable.
</content>
</entry>
<entry>
<title>test: add minibuffer prompt, relearn-item, and progress-message coverage</title>
<updated>2026-05-05T09:31:20+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-05-05T09:31:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/org-drill/commit/?id=bc75218917e8e01bc67a2582d3fb2bac32bd28fe'/>
<id>urn:sha1:bc75218917e8e01bc67a2582d3fb2bac32bd28fe</id>
<content type='text'>
10 ERT tests covering:

- org-drill--make-minibuffer-prompt: status char (N/Y/o/!/F),
  cram-mode shows C, done-entries count, prompt-text passthrough
- org-drill-relearn-item: resets DRILL_LAST_INTERVAL to 0,
  unschedules the entry (days-ahead = 0 path through smart-reschedule)
- org-drill-progress-message: emits on multiples of 50, silent
  otherwise, includes the COLLECTED count
</content>
</entry>
</feed>
