|Contents : Technical reference : Advanced reference|
|Files and folders used by SuperMemo|
These are the files used by a typical SuperMemo installation:
SuperMemo folder - usually c:\sm8, c:\sm98, c:\sm2004 etc.
- sm2004.exe - the program: SuperMemo 2004
- bin - some working files used by SuperMemo
- supermemo.ini - text file with some parameter settings used by SuperMemo. You can modify this file manually. Please do it with caution and make a back-up before introducing any changes
- layout.ini - layouts used by SuperMemo. This file also can be modified manually if backed up safely
- tips.txt - text file with tips used in Question of the Day. You can modify this file manually
- smhelp.chm - help file for SuperMemo (if you are not reading this text over the Internet, you are probably reading this file). This file is not part of the installation due to its size. You can download smhelp.chm from here
- sm7imprt.exe - optional program that is needed when importing collections from SuperMemo 6 for DOS or from SuperMemo 7 for Windows
- systems - default folder for keeping collections used by SuperMemo
- <name of the collection>.kno - file with the most important parameters of the collection such as the total number of elements, number of memorized elements, date of creating the collection, etc. For more details see below
- <name of the collection> - folder with the remaining files of the collection. You must copy this folder along the above kno file if you want to preserve the integrity of the collection. It is recommended that you always use File : Copy collection instead
- collection.ini - text file with some parameters used by the collection. You can modify this file manually. Please do it with caution and make a back-up before introducing any changes
- postpone.ini - postpone setup definitions (e.g. used with Learn : Postpone)
- search.ini - search definitions (as used with Search : Find elements)
- filter.ini - definition of element filters (e.g. as used with View : Filter)
- info - most important information files used by the collection
- compon.dat - binary file with the layout and attributes of all components used in the collection
- elinfo.dat - information about all individual elements: A-factor, last repetition date, number of repetitions, forgetting index, task number, etc.
- contents.dat - information about the structure of the knowledge tree. Each element has its parent, siblings and the first child recorded in this file along with the number of children and the number of descendants
- reps.dat - repetition history of all individual elements. This file is optional and you can remove it with File : Tools : Reset parameters : Repetition history
- burden.dat - file with the number of repetition planned for each day and the pointer to the first item on the repetition list for each day (this pointer points to elinfo.dat in which each element keeps the pointer to the next element belonging to the repetition list). You can easily find all your collections by searching for all burden.dat files. Additionally, you can see which of those collections are subject to learning as this file is zero-sized before the learning process begins
- intact.dat - element subset file with all pending elements in the order as they appear in the pending queue
- sm8opt.dat - optimization data record file used by the SuperMemo Algorithm. Read more about the details of this record in: Implementing SuperMemo with sm8opt.dll
- drill.dat - element subset file with all elements scheduled for the final drill (i.e. the final drill queue). You can delete this file manually (the final drill queue will be emptied)
- emptyslots.dat - list of unused filespace slots in element subfolders (primary and/or secondary storage)
- history.dat - element subset file with the last fifty most recently visited elements. You can always delete this file manually
- ret.dat and backret.dat - retention and back-retention data (these files can be recreated if deleted)
- registry - registries used by the collection (except translation and transcription registries; see below)
- text.* - text registry files
- text.mem - information about all registry members stored in the text registry (e.g. number of using elements, pointer to the text.reg file storing the name of the text registry member, pointer to the text.lst file storing the list of elements using a given member, etc.)
- text.lst - list of all elements using individual text registry members. This list is used, for example, in search procedures. First a member (e.g. a text) is found. Then all elements using this member are placed in a browser by scanning the user list stored in text.lst
- text.ptr - registry subset storing the sorted subset of all members in the text registry
- text.reg - all text registry members. You can view this file in any file editor. If you opt for editing this file (very dangerous!), never change the length of individual records. This would destroy the integrity of the text registry. You can search for text.reg with a given content if you need to locate a specific collection on your hard disk. Remember that such a search will not find names you used for sounds, images or other registry members (search for *.reg instead). Note also that some HTML texts may be imported via frames and will not be included in the text registry. Note: that SuperMemo registry has nothing to do with Windows registry and the extension *.reg is used here by coincidence. SuperMemo file structure was designed before the release of Windows 95. Dangerously, some anti-virus software can dramatically slow down SuperMemo if you ask it to scan reg files before they are modified
- text.rtf - rich texts used by the text registry are kept in a single file (this file is compacted if you run File : Repair collection and choose Rebuild registries). The contents of text.rtf may not match text.reg if you have edited names in the text registry (the same text member can have the name that is entirely different from its rich text contents)
- text.su1, text.su2, etc. - subset files generated with search operations. First search generates the file su1. Second search (e.g. in AND-searching) generates su2, etc. SuperMemo limits the number of subsets to five. You can always delete these files manually
- text.srt - file with the sorted subset of registry members generated when sorting the registry. You can always delete this file manually
- text.ord - file with the sorted subset of registry members generated while searching the registry. You can always delete this file manually
- font.* - font registry files
- sound.*, etc. etc.
- elements - multimedia files associated with individual registries such as video, sound, images, html, OLE, scripts, etc. You can edit all those files but you must not rename or move them as this would destroy the integrity of the collection. The elements folder can be transferred to secondary storage (e.g. with File : Tools : Semi-copy) and be stored on a CD-ROM or CDR. This way substantial hard disk savings can be made. The folder tree in elements is growing gradually as you are adding new files to the system. However, it sticks to the 40-files-per-folder limit to maximize the performance on CD-ROM media. Note that the 40-files-per-folder limit may be violated if you import HTML files with a large number of inclusions (e.g. graphics, scripts, HTML includes, etc.)
- tasks - tasklists associated with a given collection
- tasklist name.dat - task data such as value, time, deadline function, etc.
- tasklist name.ptr - sorted tasklist pointers used when displaying tasks in Tasklist Manager
- tasklist name.txt - text file exported with Import in Tasklist Manager. This file can always be deleted manually
- translat - translation registries available for the collection (see: Tools : Options : Language : Collection translation). You can delete this folder; however, the translations will become unavailable
- subsets - element subsets created by the user. You can delete this folder if you do not need the subsets. Read more: Using subsets. Two typical subsets are: last_subset.sub (contents of the last used browser that can be reused with View : Last browser) and searched.sub (results of the last search that can be reused with View : Search results)
- stats - statistics of the learning process. If you delete this folder, SuperMemo will not malfunction, but you will lose the record of your past repetitions. SuperMemo will then restore these files anyway. This folder also includes your repetition timeline stored in time.tim file
- reports - text files with reports generated by SuperMemo (e.g. recovery report, translation import report, transfer report, etc.). You can delete this folder if you do not need these reports. File : Tools : Garbage deletes this folder
- files - other files used by SuperMemo (e.g. template files). You can delete this folder
- font - true type font files that will be installed in Windows first time the collection is run. Upon installing, the font file is renamed with an underline in front of the name. For example hiragana.ttf will be renamed to _hiragana.ttf
- html - collection in HTML format or its portions created by the user. This folder can be deleted as it can easily be recreated
- temp - temporary files used by SuperMemo. You can always delete this folder. Note, however, that you will lose user recordings generated in pronunciation exercises (option Recorder on the sound component's menu)
- recover - folder used by SuperMemo to store stray files located by SuperMemo while running File : Repair collection. This folder can be deleted. However, it is recommended that you inspect its content as it may be indicative of problems with your collection
- plans - collection of text files used by Tools : Plan. The subfolder archive will contain the archive of your past work schedules (e.g. c:\sm2004\plans\archive\2004\Jun\Jun 20, 2004, Sun.txt)
- help - SuperMemo help in HTML format. This help does not have to be installed if you can view CHM files on your computer. In the latter case, use Tools : Options : SuperMemo : Help system : Microsoft Help to use smhelp.chm in the bin subfolder (see above)
- translat - SuperMemo localization table files used in displaying various language interfaces of SuperMemo (see: Tools : Options : Language : Localization table)
- phonetic - phonetic transcription registries (see: Tools : Options : Language : Phonetic transcription) and phonetic transcription fonts
- filters - filter files for processing texts in collections (extension flt)
- backup - default backup folder
- alg - plug-in algorithm DLLs and accompanying files
Most important fields of the KNO file
Total,Memorized:integer; - the number of undeleted elements in the collection and the number of memorized elements
AllocatedFileSpaceSlots:integer; - number of slots allocated for files in the elements folder
Version:byte; - collection structure version number (for checking compatibility with the used software release)
Burden:real48; - the average number of items to repeated per day
FirstDay,LastDay:word; - first day of the learning process relative to Jan 1, 1980, and the last day on which repetitions have been cleared (relative to FirstDay)
DefaultFI:byte; - default forgetting index in the collection
MeasuredFI:real48; - measured forgetting index
MeasuredFICases:word; - the number of repetitions contributing to MeasuredFI
FutureReps:real48; - not used in the current version SuperMemo
ALR,AFI, AR,AL,AI,AF,ATim,AG:real48; - various averages: Average Last Repetition, Average FI, AverageRepetition, AverageLapses, AverageInterval, AverageFactor, AverageTime, and AverageGrade
AFactorDistribution:array[1..20] of word;
IntervalDistribution:array[1..13] of word;
LapsesDistribution:array[1..15] of word;
RepetitionsDistribution:array[1..20] of word;
author specific data, repetition time measurements, repetition counters, reserved fields, topic statistics, collection version, etc.
The size of variables used above in bytes is: integer and longint 4, byte 1, real48 6, and word 2.
Frequently Asked Questions
collection can suddenly appear empty!
With luck, you can recover from "empty backup"!
Backing up Advanced English
Recovering from file mix-up
Piekarniak, Poland, Dec 2, 1997)
How to easily back up Advanced English 97? In Advanced English 94 the entire system could be compressed to a 1.4 MB file!
You can backup the learning process only. This way only the data pertaining to items in the learning process will be stored (not items themselves). Use File : Tools : Export : Learning process to export the data. Later, upon reinstalling Advanced English 97, you can restore the learning process with File : Tools : Import : Learning process. See: Backup
Duggan, Canada, Nov 2, 1998)
I was cleaning up my hard drive and attempted to move SuperMemo from one folder to another folder. In the process I lost the data for a number of collections. Can I retrieve these data files and place them back in my collection? How do I do that?
It is recommended to always move collections with File : Copy collection in SuperMemo. Otherwise, a frequent mistake is to copy the kno file without the folder that contains the actual collection files (see: Files used by SuperMemo).
Some customers also fall victim of the following scenario:
The simplest remedy is to answer No in Step 5 and open collections at the new location with File : Open collection
S, Poland, June 8,
I used to regularly back up my Advanced English on a second hard disk. Today I tried to restore my backup and ... it looks as it is empty! Only one element inside! Help!!!
There is a frequent mistake users make. To backup a collection, you need to copy both the kno file and the associated folder (e.g. file ae.kno and the folder [ae]). Some inexperienced users copy only the kno file which is just 20KB of data! If you try to open an orphaned kno file, SuperMemo will reconstruct an empty folder structure.
To avoid this problem: Always back up collections with File : Copy collection or File : Tools : Quick backup. Do not use external tools unless you understand Windows, files, folders and SuperMemo very well!
To resolve the problem: it is possible the original folder associated with the kno file still exists on the hard disk! You can search for some files characteristic for SuperMemo (e.g. burden.dat or sm8opt.dat). Make an inventory of all kno files (search for *.kno) and all SuperMemo collection folders (search for burden.dat) on your hard disk. Once the inventory is made, try to carefully match up knos and folders and copy kno files to match the folders. Chances are that File : Open on one of these files will restore the lost backup. Note that you can easily find empty collections by checking the size of burden.dat. This file contains repetitions and is zero-sized on collections with no learning process
(Richard D, USA, Feb
15 , 2001)
While backing up my collections, I have mixed up some files. As a result, my precious collection on Emergency Medicine became empty. I have lots of backups but I find it difficult to locate the appropriate files. Can you suggest how to resolve it?
To backup a collection, you need to copy both the kno file and the associated folder (e.g. file Emergy Medicine.kno and the folder [Emergency Medicine]). Some inexperienced users copy only the kno file which is just 20KB of data! If you try to open the orphaned Emergency Medicine.kno file, SuperMemo will reconstruct an empty folder structure and the collection will be empty. What is worse, if you run File : Repair collection, the kno file will be "corrected" to match data of the empty collection (e.g. Memorized will be set to zero, etc.).
To restore your collection in such cases you need to:
(hojinil, South Korea, Wednesday, April 11, 2001 4:29 AM)
I used Add New and I added lots of stuff but next time when I opened collections I couldn't find any of them. It was gone!
Please make sure the following two conditions are met:
If some files are moved or deleted behind the back of SuperMemo, it will often attempt to recreate missing files and open the collection regardless. Unless you delete your collection or delete its folders, your learning material should remain safe