OneDrive SuperMemo sync

[epistemic status: this works fine, it’s rough around the edges though.]

You want to work on SuperMemo on two different windows machines. Like one desktop and one Laptop. Instructions are for Windows 10 and SuperMemo 18
(but should only differ in minor details for other versions)


on both machines have OneDrive installed (and ensure you’re logged in with your Windows account)
have SM18 installed on both machines
use the default SM directories and OneDrive directories
(or make appropriate changes to my instructions)
have “files on demand” disabled (cause that feature is just a super stupid headache)


Create a folder called “symbolic links” in the root-directory of OneDrive.
press Windows>type “terminal”>click run as administrator
there execute:
cd C:/user/OneDrive/symbolic links/

Then type:

mklink /D “C:/users/[your username]/OneDrive/symbolic links/SM_backup_machine1” “C:/SuperMemo/systems”

Do the same on the other machine, but name the folder “SM_backup_machine2”.

“Sm_backup_machine1” is always having the exact same content as “C:/SuperMemo/systems” on machine1. On machine 2 it’ll be just another folder. And vice versa.

When you worked on machine 1 last and want to work on machine 2, simply delete the content of “C:/users/[your username]/OneDrive/symbolic links/SM_backup_machine2” and paste into it the contents of “…./Sm_backup_machine1”. Now start SuperMemo.
Same thing in the opposite case.

Process could certainly be automated for comfort with some clever start-up scripts.
Also prone to user error if you forget what your last worked on machine was, if you didn’t have internet when you finished working on that machine, if you interrupted your upload, if you restored your whole system from a backup (that’s a whole ‘nother blog post) etc.
You can move the sys-link folder around or even rename it without breaking the link. Not sure if the link is still maintained if you move or rename the machine2-folder on machine1.
Haven’t tried that.

Also might not be efficient with very large collections. Sorry Luke 🙂

source (and more on symbolic links):

If I made a mistake or you’ve got something to improve this, let me know into the comments (TODO: figure out, if this blog supports comments).

2 thoughts on “OneDrive SuperMemo sync

  1. Thanks, looks to have worked for me. Mild issue with the site: when I try to highlight something to do copy paste, the font it selects with looks almost white so it looks like I haven’t selected anything. Might want to fix that. In dark reader it’s fine though.
    Don’t have two systems yet but I’m wondering: could you use symlinks with a flash drive/sd card? e.g., there’s a symlink from folder “systems” on my flashdrive to the equivalent folder inside supermemo. When I unplug it and plug it into other computer, it has same symlink so plugs into systems there. Would that work? Could do it the way you’ve said with OD but I trust neither my upload speed nor onedrive to not screw up at some point. Using physical device is much more straightforward.

    Liked by 1 person

    1. I’ll look into the pasting issue. Also have to figure out how to get rid off the creepy emoticons.
      It’s all standard WordPress settings, so far.

      I don’t know if that’s possible. I haven’t really wrapped my head around Junctions, Hard Links, Symbolic Links quite yet.
      Your scenario seems a bit odd to me. When the flashdrive is gone, changes are made on the computer and you replug the flashdrive, you’d have a version conflict, I think?
      OneDrive hasn’t ever given me real grief so far. I would check how much actually needs to be uploaded after a SM session.
      Maybe it’s very little and that concern is misplaced.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: