summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* New option: org-drill-sm5-initial-interval. Allows users of SM5 algorithm to ↵2.3.4eeeickythump2011-06-101-39/+129
| | | | | | | | | adjust the first repetition interval from the 4 days that is mandated in the official algorithm. New option: org-drill-cloze-text-weight: Allows users of hide1_firstmore, show1_firstless and show1_lastmore card types to control how often the 'infrequent' form of the card is shown. Some bugfixes to DRILL_CARD_WEIGHT property.
* Added tag 2.3.3 for changeset 1b0cc92cbb6aeeeickythump2011-05-250-0/+0
|
* Oops! some some nasty discrepancies have now been fixed.(something went wrong2.3.3eeeickythump2011-05-251-2/+17
| | | | during a merge)
* Added tag 2.3.3 for changeset e68b52fe88aceeeickythump2011-05-250-0/+0
|
* Cloze text is now correctly identified in items whose bodies contain ↵eeeickythump2011-05-251-65/+80
| | | | | | | [[bracketed links]]. Fontification of cloze text should now work correctly when the first org file is loaded. New file types: hidefirst, hidelast
* Added tag 2.3.2 for changeset 4e43f149ea97eeeickythump2011-05-210-0/+0
|
* Removed old doc files (renamed).2.3.2eeeickythump2011-05-212-2462/+0
|
* Renamed documentation file and fixed a few typos.eeeickythump2011-05-212-0/+2488
|
* - New card types: show2cloze, hide1_firstmore, show1_firstless, ↵eeeickythump2011-05-204-228/+665
| | | | | | | | | | | | | | | | | | | show1_lastmore. See docs for details. - 'conjugate' card type can now show a hint (VERB_INFINITIVE_HINT) - New command: org-drill-again: run another drill session using leftover items from the last session, i.e. don't rescan the item collection. - If org-drill-resume is called and there is nothing to resume, offer to call org-drill-again - Automatically prompt to save all modified buffers when a drill session finishes (turn off with 'org-drill-save-buffers-after-drill-sessions-p') - Politely skip cards with unknown card types - When suspending a drill session, print a message describing the key that runs org-drill-resume (it it's bound to a key) - org-drill-merge-buffers: can now optionally be prevented from copying unmatched items from SRC into DEST - org-drill-merge-buffers: fixed a bug where it prompted for certain property values if they were not set in the item being processed - org-drill-merge-buffers: ensure that *all* items in DEST are stripped of their scheduling data
* New file-safe user variable: org-drill-scope. Allows customisation of the ↵eeeickythump2011-05-123-98/+243
| | | | | | | | | | | | | | | | scope of drill sessions (ie where items are sourced from). The variable can take the value 'directory', meaning items will be sourced from all org files in the same directory as the current file. This is useful for splitting up a monolithic item collection into smaller files, while still including all those files in drill sessions. The values of the SCOPE argument to org-drill have changed slightly. Possible values are the same as those for 'org-drill-scope'. - 'file' now means current file/buffer, respecting restrictions (default, same as old 'nil') - 'file-no-restriction' means current file, ignoring (overriding) restrictions (same as old 'file') - new value 'directory' (see above) - other values have the same meaning as before.
* Don't warn about a high percentage of failed items when the number of testedeeeickythump2011-05-111-2/+3
| | | | items in the session is zero (Milan Zamazal).
* Tiny fix to org-drill-map-entries.eeeickythump2011-05-111-1/+1
|
* Added tag 2.3.1 for changeset 566cf446fdaeeeeickythump2011-05-110-0/+0
|
* - Speed up stripping scheduling data if scope is the current buffer (default).2.3.1eeeickythump2011-05-111-38/+32
| | | | - Bugfixes for copying over of items duringorg-drill merge-buffers
* Added tag 2.3 for changeset b5d5b9f5c203eeeickythump2011-05-100-0/+0
|
* - All drill items now receive unique IDs (using the org-id module). This allows2.3eeeickythump2011-05-104-257/+658
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | various clever tricks such as 'synching' the item collections of two people. At the beginning of a drill session, IDs are assigned automatically to all drill items that do not possess them. This is slow if you have a large collection, but it only happens once. - New command 'org-drill-merge-buffers'. Called from buffer A, and given buffer B, imports all the user-specific scheduling data from B into A, overwriting any such information in A. Matching items are identified by their ID. Any items in B that do not exist in A are copied to A. A scenario where this could be useful: * Tim decides to learn Swedish using an item collection (org file) made publically available by Jane. (Before publishing it Jane used 'org-drill-strip-all-data' to remove her personal scheduling data from the collection.) A few weeks later, Jane updates her collection, adding new items and revising some old ones. Tim downloads the new collection and imports his progress from his copy of the old collection, using 'org-drill-merge-buffers'. He can then discard his old copy. Any items HE added to HIS copy of the old collection will not be lost -- they will be appended to his copy of the new collection. - Instead of overdue items being reviewed in a completely random order, they are now ordered by the number of days overdue, so that the most overdue items are seen first. When two items are the same number of days overdue, then the order is random. - slightly adjusted how 'random noise' is applied to intervals, to give wider spread - we now use the port of the Common Lisp random number generator, in cl.el, instead of emacs' builtin RNG - Random number generator is now reseeded using system time at the beginning of each drill session. - Hints inside clozed text areas are now invisible during drill sessions if the clozed text is not itself being hidden, ie if your card contains [Moscow|Russian city] you will only see [Moscow] in the answer. - The '...' is now shown after the hint text rather than before it, i.e. '[Russian city...]'. You can override this by actually including '...' in the hint itself. - The minibuffer prompt now displays the card 'type' for testing purposes, as a single letter: N=new, Y=young, o=old, !=overdue, F=failed - New card type: hide2cloze (hides exactly 2 randomly chosen areas of clozed text)
* Added tag 2.2 for changeset d9430f6647c9eeeickythump2011-04-300-0/+0
|
* - Added new example card types, more useful than 'spanish_verb':2.2eeeickythump2011-04-304-162/+638
| | | | | | | | | | | | | | | | | | | | | | | - 'conjugate': retrieves properties VERB_INFINITIVE and VERB_TRANSLATION from parent item, and uses its own property VERB_TENSE to prompt the student 'Translate the verb INFINITIVE and conjugate for the TENSE tense' or 'Give the verb meaning TRANSLATION and conjugate for the TENSE tense' - 'translate_number': using third party library spell-number.el, prompt the student to translate a random number to or from a non-English language (the library can handle numerous languages) - examples of both in spanish.org - org-drill-card-type-alist can now take a second function name, for controlling how the ANSWER is displayed - items can have weights (DRILL_CARD_WEIGHT). The interval is divided by the weight when scheduling, so eg an item with a weight of 2.0 will be tested twice as often as a normal item. - New command: org-drill-tree. Same as org-drill using 'tree' argument. - New command: org-drill-strip-data: deletes all scheduling data from every item in scope. Intended for use if you wish to share your item library with someone else. - Fixed bug in simple8 algorithm where items failed on their first review were not having intervals reset - Ensure all markers are freed before starting a new drill session.
* - 'multicloze' card type renamed to 'hide1cloze' (though 'multicloze' iseeeickythump2011-04-223-75/+178
| | | | | | | | | | | | | | still recognised as a synonym, for backwards compatibility) - new card type 'show1cloze' -- like hide1cloze, but only reveals one of the areas of clozed text in the item. - when 'revealing' an item during a drill session, do not show contents of any subheadings which are themselves tagged as drill items. This means you can have drill items inside drill items, without giving their answers away when you review the parent item. - better ensure visibility state of the org buffer is restored after the drill session. - syntax highlighting of [clozed text] now works if other faces are applied inside the clozed text area, eg [the *largest* city]
* - At the end of a drill session, when re-presenting items that were failedeeeickythump2011-04-161-5/+13
| | | | | during the course of that session, we now avoid showing the same item straight after itself (unless it is the only item left).
* Added tag 2.1.1 for changeset 60b0a80ce97aeeeickythump2011-04-150-0/+0
|
* - More robust handling of the situation where we resume a drill session but2.1.1eeeickythump2011-04-153-55/+104
| | | | | | | some items have been moved or deleted. We now check for this and discard offending markers, rather than failing outright. - Final report now shows number of items that will become due tomorrow. - Fixed a rounding bug which affected deciding whether items are 'overdue'.
* Added tag 2.1 for changeset da0c515d1d39eeeickythump2011-04-130-0/+0
|
* - Can now resume drill sessions after exiting with (e)dit or (q)uit commands!2.1eeeickythump2011-04-133-398/+678
| | | | | | | | | | | | Use 'M-x org-drill-resume'. - Finessed the prioritisation of items during drill sessions. - We now present failed and OVERDUE items first. Overdue status is defined in days and has some leeway, defined by a new variable 'org-drill-overdue-interval-factor'. - Next we present YOUNG items (learned or relearned recently, so have short intervals). The definition of 'young' is via the variable 'org-drill-days-before-old'. - Finally we present a random mix of OLD items and NEW items. - Final report gives info about counts of pending overdue, young, and old items. - Timer shows '++:++' if > 1 hour passes while reviewing an item.
* Added tag 2.0 for changeset 16cafa21aef0eeeickythump2011-04-080-0/+0
|
* Many changes:2.0eeeickythump2011-04-083-530/+1211
| | | | | | | | | | | | | | | | | | | | - Item drill data is stored in a clearer format, each value has its own property, the old 'org-learn' LEARN_DATA property has been dropped. Items that contain LEARN_DATA are silently rolled over to the new format. - For SM5, matrix of optimal factors is now correctly *global* rather than per-item, and is saved between drill sessions as an emacs customization variable. - We store interval data as floating point numbers rather than rounding to the nearest integer. - New experimental algorithm: 'simple8', based on SuperMemo SM8. - New options: - org-drill-forgetting-index: define the percentage of items that it is "acceptable" to fail. A warning message is shown after the drill session if more items than this were failed. - org-drill-learn-fraction: governs how fast time intervals increase with each successful repetition of an item. - org-drill-adjust-intervals-for-early-and-late-repetitions-p: if true, alter next scheduled date if an item is reviewed earlier or later than it was supposed to be. - Almost all variables have been declared safe for file-local reassignment. - We now ignore org-learn-always-reschedule, regarding it as always true. - Post-session report now shows a count of dormant items (those not yet due for review).
* - New option: org-drill-hide-item-headings-p. If non-nil, item headings will ↵eeeickythump2011-04-043-33/+101
| | | | | | | | | be made invisible while each item is being tested. - OF matrix entries are rounded to 3 decimal places. - Item E-factors are not modified if the item is "failed" (in accordance with Dr Wozniak's description of the SM5 algorithm).
* - Hide comments (#...) in items during drill sessions.eeeickythump2011-03-275-136/+216
| | | | | - Fix bug where if a subheading was more than 1 level deeper than the tested item, and had no parent heading other than the item's heading, it would not be hidden during testing.
* Added tag 1.6 for changeset 6ff8dd70c108eeeickythump2011-03-090-0/+0
|
* Bug fix: when drill sessions span more than one file, display items in the ↵1.6eeeickythump2011-03-091-3/+3
| | | | | | other files correctly. (Previously the only items which worked correctly were those in the buffer/file where org-drill was invoked.)
* Improved key input during drill sessions. Once the answer is revealed, it is ↵eeeickythump2011-03-071-13/+37
| | | | | | | now possible to navigate within the topic using the cursor, PgUp/PgDn and mouse scroll wheel. This is sometimes necessary for topics which do not fit entirely on one screen.
* Added tag 1.5 for changeset 42f3700bc748eeeickythump2011-02-020-0/+0
|
* Fixed bug causing items to sometimes appear multiple times during a single ↵1.5eeeickythump2011-02-021-38/+65
| | | | | | drill session. Thanks to Milan Zamazal (pdm@zamazal.org) for this fix.
* Added tag 1.4 for changeset 2e4735840112eeeickythump2010-09-170-0/+0
|
* * Documentation added for multicloze cards and cram mode.1.4eeeickythump2010-09-174-71/+299
| | | | * Multicloze card example added in 'spanish.org'.
* * New command: 'M-x org-drill-cram'. "Cram Mode" is the same as an ordinary ↵eeeickythump2010-09-171-103/+233
| | | | | | | | | | | | | | | | drill session, except that ALL items are considered "due for review" unless they have been reviewed within the last few hours (the number of hours is configurable by setting 'org-drill-cram-hours'). This mode is intended for quickly revising a collection of drill items before a test. * New card type: multicloze. Behaves the same as "simple" cards, but when there is more than one portion marked as cloze text, only ONE of the marked portions will be hidden during review (chosen at random) -- the rest will all be visible. This means that a sentence containing several facts can be easily turned into a drill item by marking each fact. * During review, the count of "done" items is displayed. * After rating your recall of an item, the number of days until its next review is briefly shown in the minibuffer. * In org buffers, the "hint" portion of cloze text now has its own face.
* Added ability to skip cards during review (answer is not shown).eeeickythump2010-09-081-11/+19
| | | | Fixed bug that caused sessions to end with "ran out of drill items" error.
* Added tag 1.3 for changeset c8dd87db2ce1eeeickythump2010-09-040-0/+0
|
* Separate counts of pending new, old, and failed items are displayed in ↵1.3eeeickythump2010-09-044-122/+306
| | | | | | | | | custom colours during review and in the final report. A timer (MM:SS) is displayed as part of the review prompt. Order-of-magnitude speed boost when scanning entries to prepare a drill session. Recycle markers at the end of each drill session.
* Allow editing and tag-editing when prompted for recall quality.eeeickythump2010-09-024-91/+144
| | | | | | | | Allow tag-editing when reviewing items. Any linked image files are displayed inline during review. Don't hide org links [[...][...]] when hiding cloze text, azs they may contain inline images which we want to keep visible. Close property drawers during review. Provide visual feedback (progress bar in minibuffer) when scanning items in preparation for a drill session.
* Added tag 1.1 for changeset bc740455003beeeickythump2010-08-260-0/+0
|
* Added implementation of SM2 algorithm.1.1eeeickythump2010-08-264-225/+533
| | | | | | | | | | Add option 'org-drill-spaced-repetition-algorithm': choose either SM2 or SM5 algorithm. Add option 'org-drill-add-random-noise-to-intervals-p': randomly vary repetition intervals slightly, to avoid clumping. Fixed a bug in org-learn's SM5 algorithm (intervals much too long). Use overlays to display cloze deletions as '[...]' during reviews. Cloze text can contain hints, which will visible during review. Add option 'org-drill-failure-quality': customise which quality is regarded as unambiguous failure (1 or 2). Expanded documentation, and added section on 'incremental reading', with example setup.
* Added tag 1.0 for changeset a3f5efca0221eeeickythump2010-08-220-0/+0
|
* Added README with more detailed documentation.1.0eeeickythump2010-08-224-130/+1482
| | | | | | | | | | | | | Items which are failed during session are presented again before the session ends. Items which were failures at the last review session are presented first in the next session. Added recognition of leech items, based on excessive number of failures. Leeches can be skipped or warned about. When reviewing an item, the prompt shows the number of items remaining. When the session finishes, the minibuffer shows a brief report givisng statistics about total time spent reviewing, number of cards that still need review, etc. Fixed the regexp for cloze-deleted text. Optional face for cloze text in org mode buffers. New card type: twosided.
* Minor change to docs.eeeickythump2010-08-121-1/+1
|
* Added special card type for spanish verbs, to demonstrate custom card types.eeeickythump2010-08-013-122/+258
|
* First commiteeeickythump2010-08-012-0/+438