Skip to content

Latest commit

 

History

History
351 lines (336 loc) · 15.2 KB

CHANGELOG.org

File metadata and controls

351 lines (336 loc) · 15.2 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Unreleased

Added

  • Customizing hinting string (“…”) with org-fc-type-cloze-hint-prefix.
  • Show the total number of position in org-fc-dashboard.
  • Option to hide the title of a card; org-fc-review-hide-title-in-header-line.
  • Documentation files from https://www.leonrische.me/fc/index.html in docs/.
  • org-fc-audio-replay to replay audio of a card.

2.13.0 <2023-02-10 Fri>

Added

  • Card creation date in org-roam database.

Fixed

  • Make time specification of org-fc-roam works with dashboard.
  • The content of topic cards is hidden.

Changed

  • index.awk doesn’t output :file-suspended anymore.
  • org-fc-awk-index-paths check for suspended file level card.

2.12.0 <2023-02-06 Mon>

Added

  • org-fc-review-show-remaining-cards a variable that controls whether to show the number of remaining cards in review session.

Changed

  • Auto postpone happens at startup of Emacs.
  • Topic cards won’t be narrowed when set up.

Renamed / Deprecated

  • org-fc--deinit-card -> org-fc-deinit-card

Fixed

  • The due date of postponed cards being in the past result in multiple postponement.
  • Deleting unpostponed due cards from database.
  • AWK indexer not recognizing padded property drawer
  • Postpone count got swapped with due date in the reinsertion of card table.

2.11.0 <2022-05-06 Fri>

Added

  • org-fc-roam-postpone-skip-count a variable that limits the amount of cards to be postponed per day.
  • org-fc-roam-index now passes an additonal opition NON-RECURSIVE to org-fc-awk-index.

Changed

  • Priority now comes from the exported plain text version of the content from a card to avoid mistaking Org mode markup for content.

Removed

  • Pending cards indexer org-fc-roam-index-pending due to low usage.

Fixed

  • Advising an obsolete function org-roam-node-find-noselect.
  • Inaccurate time comparison in auto postpone function.

2.10.0 <2022-03-14 Mon>

Added

  • Buttons for rating cards in session.

Changed

  • The available ratings for cards now has to be defined for each algorithm via property list.

Removed

These rating commands are removed and replaced with buttons to show to user instead.

  • org-fc-review-rate-again
  • org-fc-review-rate-hard
  • org-fc-review-rate-good
  • org-fc-review-rate-easy

2.9.0 <2022-03-12 Sat>

Added

  • Cloze interval for cloze deletion cards.
  • org-fc-roam-mode for caching card data using org-roam’s database.

Changed

  • Priority is now determined by LIX readability score instead of the length of the text.
  • Org-roam daily notes will not be inserted to cards table.
  • The property drawer of topic cards will not be narrowed when in review session.

Renamed / Deprecated

  • org-fc-priority -> org-fc-roam-sm2-priority-get

Fixed

  • Not quoting card id to use in AWK script for org-fc-awk-history-for-id.
  • Auto-postponing non-due cards as a result of comparing localtime with UTC time.

2.8.0 <2022-02-08 Tue>

Added

  • roam-sm2 accepts the scheduled time of a card as initial due date if it is in the future.
  • org-fc-roam-index fallbacks to org-fc-awk-index when a card is not managed by org-roam.
  • A sorting function org-fc-roam-index-sort-cards that interleave topic cards with other cards.
  • The customization of the queue: the proportion of topic cards vs others, the proportion of randomized cards vs priortized cards.

2.7.0 <2022-02-04 Fri>

Added

  • Auto sorting and postponing low priority cards everytime Emacs is closed. See: Auto-postpone.
  • org-fc-roam-review-history-add adds old review data to revlog when a card is reviewed.

Changed

  • org-fc-roam-index now only lists outstanding cards.
  • org-fc-awk-history-for-id outputs time as number instead of string.

Fixed

  • org-fc-roam-index output no position.
  • Unable to insert review data because position is not formatted as string.

2.6.0 <2022-01-26 Wed>

Added

  • postpone value in cards schema.
  • Pending queue for card with “pending” tag, using its separate indexer org-fc-roam-index-pending.
  • org-fc-roam-update that automatically reinsert review data of every org-roam node to match with the database.

Changed

  • org-fc-awk-history-for-id outputs a list of plists.

2.5.0 <2022-01-26 Wed>

Added

  • A variant of SM2 algorithm with extra parameters: priority.
  • org-fc-priority that calculates the priority based on the length of the content of a card.

Fixed

  • Database insertion function inserted card type as due date resulting in every card being due now.

2.4.0 <2022-01-26 Wed>

Added

  • Integrate with org-roam database with the new schema of cards and revlog.
  • New indexer org-fc-roam-index that queries org-roam database and transforms the output to plist of cards useful to org-fc.
  • org-fc-awk-history-for-id a command that outputs the history for a card using the script index_history.awk.

2.3.0 <2023-02-06 Mon>

Changed

  • Rewrite of Changelog.org

2.2.0 <2022-04-20 Wed>

Added

  • The :non-recursive in custom contexts means that awk will search for cards non-recursively.

2.1.0 <2022-03-15 Tue>

Added

  • Automatic rating when there is only one possible rating for an algorithm.

Fixed

  • org-fc-register-algo not registering algorithm with the new rating definiton.

2.0.0 <2022-03-15 Tue>

Added

  • Rating buttons every time user enter org-fc-review-rate-mode
  • New way to define an algorithm rating via property list

1.3.1 <2022-02-19 Sat>

Fixed

  • org-fc-review-suspend-card not saving the file after adding org-fc-suspended-tag to it. See l3kn#54.
  • org-fc-browser--awk-index-paths outputs only one entry.

1.3.0 <2022-02-19 Sat>

Added

  • org-fc--deinit-card for deinitializing flashcards to turn them to normal headline

1.2.0 <2022-02-07 Mon>

Added

  • The topic card type for cards that are meant to be passively read without active recall
  • org-fc-index-sort-cards, A new function to sort cards by interleaving topic cards with other cards for more info see its description.

Changed

  • New method for sorting card when making a new review session The order goes: indexing (org-fc-index)

    v filtering (org-fc-index-filter-due)

    v sorting (org-fc-index-sort-cards)

    The indexing can be customized by setting org-fc-index-function, org-fc-index-filter-function, org-fc-index-sort-function respectively.

1.1.1 <2022-02-06 Sun>

Added

  • org-fc-cloze-dwim that turns active region or word under point to a cloze

Renamed / Deprecated

  • org-fc--add-tag -> org-fc--add-tags
  • org-fc--remove-tag -> org-fc--remove-tags

1.0.1 <2022-01-26 Wed>

Fixed

  • org-fc-awk-history-for-id now outputs parameters as plist

1.0.0 <2022-01-25 Tue>

Added

  • An algorithm api via org-fc-register-algo, see its documentation for more.

0.3.0 <2022-01-22 Sat>

Added

  • A card browser built on tabulated-list-mode, can be accessed by M-x org-fc-browser.

0.2.0 <2022-01-20 Thu>

Added

  • Support for a file-level flashcard, this kind of flashcard must be at the top of the file, see this card for example.

0.1.1 <2022-01-18 Tue>

Added

  • A “burden” value in org-fc-dashboard, see https://supermemo.guru/wiki/Burden for what it means.
  • A “lapses” value in org-fc-dashboard, the average number of times each card has been forgotten.

0.1.0 <2021-03-07 Sun>

Added

  • A org-fc-after-flip-hook that is run after a card is flipped
  • Support for setting audio files to play after flipping a card via org-fc-audio-set-after-flip

Fixed

  • Reverting the dashboard buffer didn’t work due to a missing function argument, this has been fixed

Renamed / Deprecated

  • org-fc-audio-set-after -> org-fc-audio-set-after-setup
  • org-fc-audio-set-before -> org-fc-audio-set-before-setup
  • org-fc-audio-property-before -> org-fc-audio-before-setup-property
  • org-fc-audio-property-after -> org-fc-audio-after-setup-property

Removed

  • The “G” key binding in org-fc-dashboard-mode has been removed in favor of the default “g” revert-buffer binding

0.0.1 <2020-11-12 Thu>

[2020-11-12 Thu]

  • Removed (org-fc-filter-index index filter), replacing it with indexer specific functions (org-fc-awk-index paths &optional filter) and (org-fc-cache-index paths &optional filter)
  • Added a defcustom org-fc-index-function to support different indexers
  • Added a prototype caching indexer

[2020-11-11 Wed]

Added

The dashboard now includes a forecast of how many cards will be due during the next day, week (+7 days) or month (+30 days).

Changed

  • All dashboard functions were extracted to a separate file
  • org-fc-stats was renamed to org-fc-dashboard-stats
  • org-fc--hashtable-to-alist was renamed to org-fc-dashboard--hashtable-to-alist
  • org-fc-context-dashboard was renamed to org-fc-dashboard-context
  • org-fc-review-dashboard-context was renamed to org-fc-dashboard-review

[2020-09-09 Wed]

Org-fc now supports nested flashcards.

Changed

  • It’s now possible to mark child headings of flashcards as a flashcards
  • When flipping a card, child headings (except the “Back” heading) remain collapsed
  • Subheadings are ignored when searching for holes of cloze cards

[2020-07-16 Thu]

Changed

  • Suspending a card during review now removes all other positions of it from the current session, to avoid reviewing suspended cards

[2020-07-08 Wed]

Changed

The awk index now also includes the headline text of each card.

This will be useful for building a tabulated-list-mode based card overview.

[2020-07-06 Mon]

Added

  • org-fc-suspend-tree for suspending all cards in a subtree

Changed

  • unsuspending overdue cards doesn’t reset their review data anymore

[2020-07-04 Sat]

Added

  • org-fc-review-edit (bound to p) pauses the review for editing the current card. A new mode org-fc-review-edit-mode adds keybindings for resuming & quitting the review.

[2020-07-03 Fri]

Changed

  • By default, failed cards are appended to the end of the review session. This can be configured via org-fc-append-failed-cards
  • org-fc-map-cards takes an optional scope argument, similar to org-map-entries.

Added

  • org-fc-unsuspend-tree unsuspends all cards in the subtree at point

[2020-07-02 Thu]

Changed

  • org-fc-review-rate-card was renamed to org-fc-review-rate

[2020-07-01 Wed]

Changed

  • The review history file is only written once per review, as a first step towards implementing a “undo-rating” command

[2020-06-29 Mon]

Added

  • Shuffling of positions for the review can be disabled by setting org-fc-shuffle-positions to nil

Changed

  • Error messages from shell commands are promoted

[2020-06-28 Sun]

Added

  • org-fc-before-review-hook that runs when a review session is started

[2020-06-26 Fri]

Changed

  • Messages are not inhibited during review
  • Whitelisted drawers are expanded during review

Added

  • A org-fc-after-review-hook that runs when the review ends / is quit
  • org-fc-keymap-hint extension
  • org-fc-audio extension

[2020-06-25 Thu]

Added

  • SCHEDULED: ..., DEADLINE: ... timestamps are hidden during review
  • Drawers in org-fc-drawer-whitelist are not hidden during review

Changed

  • During the review process, two minor modes are used instead of two hydras

[2020-05-24 Sun]

Changed

  • Include file information in card index
  • Maintain order of positions in a card when shuffling

[2020-05-22 Fri]

Changed

  • Exit hydra when review is started

[2020-05-08 Fri]

Changed

  • Per-context dashboard
  • Improve org-indent of cards
  • Use special “fc-demo” tag for demo cards
  • Move opening of flip/rating hydras to main review loop

[2020-05-01 Fri]

Internal

The AWK scripts now generate S-expressions instead of CSV tables, this way read can be used to parse the data instead of relying on a set of custom parsing functions.

This also allows passing more complex data structures from AWK to org-fc.

[2020-04-29 Wed]

Implemented a new version of the spacing algorithm (SM2) that’s used by org-fc.

The only difference is in how the next interval for cards rated as “hard” is calculate.

The initial version ('sm2-v1) would decrease the ease factor by 0.15, then calculate the next interval by multiplying the previous interval with the new ease factor.

In the new version ('sm2-v2), the interval is always multiplied by a factor of 1.2, similar to the version of SM2 used by Anki.

org-fc-algorithm can be used to set which version of the algorithm should be used, defaulting to 'sm2-v1.

Once I have evaluated the performance of the new algorithm, the default version will change to 'sm2-v2.

[2020-04-12 Sun]

Added

  • text-input card type

[2020-02-08 Sat]

Changed

  • Add a “Z” suffix to all ISO8601 timestamps

Added

  • A function to estimate the number of reviews in the next n days

[2020-02-03 Mon]

Internal

  • org-fc-due-positions-for-paths now shuffles the lists of positions using an Emacs Lisp function instead of depending on shuf
  • All awk-indexer functions now use gawk instead of awk