https://git.dkl9.net/memoire/tree/613c57586a0209183f264ec261fa1c4d90ec97c7Recent commits to memoire (613c57586a0209183f264ec261fa1c4d90ec97c7)2022-08-03T13:37:56-04:00tag:gitlist.org,2012:commit/613c57586a0209183f264ec261fa1c4d90ec97c7Optimise Recfile output generation2022-08-03T13:37:56-04:00John Smith
<pre>The Recfile-save function was painfully slow, perhaps accidentally
quadratic, due to inefficiencies in string concatenation.
Replacing a loop with a binary-tree recursion speeds it up greatly --
on my deck, the Recfile generation step now runs >18x faster.
</pre>
tag:gitlist.org,2012:commit/c2ec0491d42874c03238e08d34ca8cb8b60a1c8eFix bug in 6975b4b2022-07-26T08:52:36-04:00John Smith
<pre></pre>
tag:gitlist.org,2012:commit/6975b4b194a5556dc14a1449f578b6f619d4bf1bFix bug in 9b023b32022-07-26T08:50:59-04:00John Smith
<pre></pre>
tag:gitlist.org,2012:commit/9b023b35495b992a6456c56a223880e913e15160Allow configuration of starting ease2022-07-26T08:38:31-04:00John Smith
<pre></pre>
tag:gitlist.org,2012:commit/4bf99c8f05473723cd8f47b15a9cf31a3a36cbb1Greatly improve scheduling algorithm2022-07-26T08:31:53-04:00John Smith
<pre>The scheduling algorithm is now similar to the SM-2-based algorithm
used in Anki, with various simplifications, such as the omission of
a separated "learning" phase.
This change required adding an `Ease` field to each prompt.
Memoire remains backwards-compatible by automatically adding
the default ease to any cards which have no such field.
</pre>
tag:gitlist.org,2012:commit/8cdfc8938c8b5176254b641ee379158bb98b7e92Restore image display (semi-revert fb25b30)2022-07-12T01:33:58-04:00John Smith
<pre>It only took me 3 months to figure out, but I can display images
(on my system) with a shell-call to `iv` (an image viewer),
resolving the issues with image display.
Now, cards with images are no longer filtered out.
</pre>
tag:gitlist.org,2012:commit/bf1d7e3dd505ffd8d070817c740e5fc33e235cf6Fix deficiency in 84334042022-06-22T00:39:54-04:00John Smith
<pre></pre>
tag:gitlist.org,2012:commit/843340450df0bb3fba8cc700169386d4f1300fdaFix nil-value bug2022-06-22T00:34:54-04:00John Smith
<pre>When editing an existing card, the user can (and should be able to)
insert more cloze units/prompts than were already present.
Before this change, reviewing the final prompts would result in
an arithmetic-on-nil-value error, because the edit feature
neglected to insert corresponding `ReviewDelay`, etc fields
for new prompts.
</pre>
tag:gitlist.org,2012:commit/8fec366e4849daaf56fde61c76a226eddf228e65Check if standard input is a terminal2022-05-14T23:50:55-04:00John Smith
<pre>Memoire will now check if its standard input is a terminal,
and alter some behaviour accordingly:
- the message output at the start of the add-card interface
is more suitable for an automated process when not reading
from a terminal
- the review process will be cancelled when not reading from a terminal
</pre>
tag:gitlist.org,2012:commit/580e8bf70a3c8ca276570fd4a68392640af30f71Add DelayRatio and AllowedRandomVariation config options2022-05-14T23:27:55-04:00John Smith
<pre>The review scheduler now looks at DelayRatio and AllowedRandomVariation
options from the configuration file; these control, respectively,
- the factor/ratio by which the delay from the previous review
is scaled to determine the new delay
- the proportion of the precisely scheduled delay by which
a random offset can manipulate the final delay
If these options are not specified, default values will be used,
providing the same behaviour as before the change.
Implementing this involved adding a function to retrieve values
from configuration data, pressuring me to split configuration-loading
code into a separate file ...
</pre>