Incremental Writing

by Jamesb | Experimental Learning
5
4
3
2
1
Score: 30/100

Description

The Incremental Writing plugin brings the method of spaced and prioritized revision to your notes by allowing you to add entire notes or individual blocks to custom queues. Designed around the principles of incremental writing from SuperMemo, it helps you revisit important content over time using either a simple or A-Factor-based scheduling approach. You can manage multiple queues, set priorities, manually edit repetition intervals, and even automate queue entries using tags. The plugin offers powerful commands to load, schedule, dismiss, or bulk-add content through fuzzy search, search results, or context menus.

Reviews

No reviews yet.

Stats

207
stars
12,535
downloads
16
forks
1,826
days
1,367
days
1,679
days
1
total PRs
1
open PRs
0
closed PRs
0
merged PRs
85
total issues
31
open issues
54
closed issues
0
commits

Latest Version

5 years ago

Changelog

Contains quality of life improvements, bug fixes and some small new features.

  • Added: Ability to select natural language dates using dropdown components and customise the dropdown options in the settings.
  • Fixed: Use default rep date setting when adding notes using queue tags.
  • Updated: Pretty format the markdown table with column alignments to make it easy to read.
  • Fixed: Queue folder with subfolders showing incorrect queue name in status bar bug.
  • Added: Create and load new queue command and modal.
  • Updated: Update the status bar if the current rep could have changed.
  • Updated: Don't close modals on invalid data, just show a message indicating why it's invalid.
  • Added: A command to add links in the current selected text to a queue.
  • Fixed: Bugs related to using a subfolder for queues.
  • Misc: Use placeholders for default values eg. for queue dropdown.
  • Added: MIT license.

README file from

Github

Incremental Writing Plugin for Obsidian

This plugin allows you to do incremental writing in Obsidian. In incremental writing you add notes and blocks from your Obsidian vault to prioritised queues to be reviewed incrementally over time.

If you are interested in learning more about this plugin and incremental writing in general, here are some resources you may find useful:

Also, if you find incremental writing useful, you should definitely check out incremental reading!

Support

I want to put all of my energy into these projects and work on them full time! I also want to keep as much of my content open source and freely available as possible. That those seeking knowledge may find it!

If you would like to support my work, I have a Patreon page with rewards for each tier or you can buy me a coffee.

Using the plugin

Notes

  • This plugin adds a button to the search pane using private Obsidian APIs which could cause the plugin to break when Obsidian updates until I have time to fix it.
  • The Obsidian API is in early alpha so this plugin could break (temporarily) after an update.
  • I strongly recommend installing the Natural Language Dates plugin alongside this plugin because it allows you to use natural language when you are asked to provide a date eg. "tomorrow" or "in two weeks", rather than having to type out a date like "2020-02-02".
  • This plugin is not supported on mobile! (yet)

Important! Priorities

  • Confusingly, low priority numbers correspond to high priorities! That means your daily queue of repetitions will be sorted from lowest priority number (most important) to highest priority number (least important). This is because this is the way priorities work in SuperMemo and having used it for a couple years I just got used to thinking about it like that. I didn't realise how confusing this could be until someone mentioned it in an issue. Apologies for any confusion!

Features

Commands
  • Load a queue: The plugin supports multiple incremental writing queues that you can switch between using a fuzzy search menu. This command uses a fuzzy search component to search in the queue folder specified in the settings for queue files.
  • Open queue in current pane: Open the currently loaded queue in the current pane. You can check which queue is currently loaded by looking at the status bar at the bottom of the Obsidian window.
  • Open queue in new pane: Same as above, but open the currently loaded queue in a new pane.
  • Add note to queue: Adds the active note in Obsidian to the currently loaded incremental writing queue.
  • Add block to queue: Adds the current block to the currently loaded incremental writing queue.
  • Current repetition: Goes to the current repetition for the currently loaded queue.
  • Next repetition: Goes to the next repetition for the currently loaded queue.
  • Edit current repetition data: Edit the interval, priority, next repetition date or notes for the current repetition.
  • Next repetition and manually schedule: Executes next repetition and opens a modal for you to edit the next repetition date and interval manually.
  • Dismiss current repetition: Dismiss the current repetition from the queue. This note or block will not show up again for review.
  • Add links within the current note to a queue: Add any links to other notes within the current note to a queue.
  • Bulk add blocks with references to queue: Add all of the blocks with "^references" to an incremental writing queue.
  • Add note to queue through a fuzzy finder: Opens a fuzzy finder which you can use to add any note in your vault to the current incremental writing queue.
  • Add search results to a queue: Do a search and click the "Add to IW Queue" button at the top of the search pane to add all of the results to a queue.
  • Add folders, files and links to a queue: You can also right click on folders, files and links to add them to queues through the context menu.
Automatically Add Notes to Queues

There are some options for automatically adding notes to queues.

  • Auto add notes using tags: In the settings page you can define a list of queue names and associated tags. When you modify a note, the plugin will check to see if a queue tag was added. If so, the note will automatically get added to the queue. This mapping only applies to newly created notes, ie. when you install the plugin it won't automatically add all notes with a given tag to a queue. So the recommended workflow is to begin by searching for all notes with a given tag and adding those to a queue using the "add search results to queue" function (see above). Then you can set up the queue to tag mapping in the settings to make sure that future notes with a given tag get added to the queue.

  • Auto add new notes option: When toggled on in the settings, new will automatically get added to the default queue. I recommend using the tag method above rather than this because using tags gives you more control over which notes get added and which queue(s) they get added to.

Scheduling Options

There are currently two scheduling styles to choose from: A-Factor and Simple.

  • Simple: When you hit next repetition, the current repetition gets pushed to the end of the queue by setting its priority to 99.
  • A-Factor: When you hit next repetition, the interval between repetitions gets multiplied by the A-Factor to work out the next repetition date.

Similar Plugins

info
• Similar plugins are suggested based on the common tags between the plugins.
Aosr
4 years ago by linanwx
Aosr is Another Obsidian plugin for Spaced Repetition.
Repeat
4 years ago by Andre Perunicic
Review notes using periodic or spaced repetition.
Awesome Flashcard
3 years ago by AwesomeDog
Handy Anki integration for Obsidian.
Auto Anki
3 years ago by ad2969
Using AI to automate card creation for Spaced Repetion in Anki
Memorization
3 years ago by Joseph Cochran
The Queue
2 years ago by Kolja Sam Pluemer
An Obsidian.md plugin randomly exposing you to your cards. Supports habits, to-dos, spaced repetition flashcards, iterative reading and more.
Yanki
2 years ago by Eric Mika
An Obsidian plugin that syncs flashcards from a folder in your vault to Anki. Pure Markdown syntax. No fuss.
Better Recall
2 years ago by FlorianWoelki
A better spaced repetition and recall plugin for Obsidian inspired by Anki.
Learnie
2 years ago by tankh99
Learnie is an Obsidian plugin that helps to enhance your learning with active recall and spaced repetition.
Review
6 years ago by ryanjamurphy
Add the current note to a future daily note to remember to review it.
Flashcards
5 years ago by Alex Colucci
🎴 An Anki plugin for Obsidian.md
Export to Anki
5 years ago by Pseudonium
Script to add flashcards from text/markdown files to Anki
Spaced Repetition
5 years ago by Stephen Mwangi
Fight the forgetting curve by reviewing flashcards & entire notes on Obsidian
Recall
5 years ago by Martin Jirlow
A spaced repetition system for Obsidian!
Spaced everything
2 years ago by Zach Mueller
Obsidian plugin to apply spaced repetition to incrementally develop your notes.
AI-AnkiSync
a year ago by goev
Spaced Repetition AI
a year ago by Belinda Mo, Athena Leong
AI + Spaced Repetition Plugin for Obsidian
Anki Integration
a year ago by Noah Boos AKA Rift
Create flashcards from your notes with a seamless interface, structuring them with metadata and syncing effortlessly via AnkiConnect.
Zhongwen Reader
a year ago by natipt
This is a Chinese hover dictionary and vocabulary-building plugin for ObsidianMD.
Come Through
a year ago by mntno
An Obsidian plugin for creating and reviewing flashcards.
OpenWords
a year ago by insile
用于英语学习中背单词与单词管理的 Obsidian 插件
Dictionary Lexicon
3 months ago by Alvin
Look up words and improve vocabulary by using flash card style cards.
Anki Helper
3 months ago by Dusk
Decks
3 months ago by Xherdi Lika
An Obsidian Flashcards plugin