Clippy2 is a community add-on for Open Steno Project's stenography software Plover. The add-on locally tracks a user's keystrokes and creates a datalog any time the user executes a suboptimal brief (a word on the stenotpye).
Anki is a popular spaced repition flashcard app that algorithmically burns terms into the user's memory, which is a must have for any student learning stenography.
This steno-anki-engine is a lightweight Node.js script that:
node index.js help
for a comprehensive list of all the avaliable commands. Important ones include:
node index.js create ankifile <word_list>
which defines all words in a file and formats it for export to Ankinode index.js create clippy2 <clippy_2.org file location>
which extracts the most common misstrokes from a clippy_2.org file and formats them for Ankinode index.js suggest <word>
which uses AI to suggest a brief for the given wordDue to the nature of GitHub, I am unable to share my own API key. Thus, if you wish to use the suggest
feature, then you must provide your own. To do so, you must first create an API key from OpenAI (you must add a minimun of $5.00 to your account for this step). You can find official instructions on how to get your token here. Then, either provide your token to the terminal as an environment variable named OPENAI_API_KEY
, or in the classes/GPTPrompter.js
file, replace process.env.OPENAI_API_KEY
with your API key. If all goes correctly, you should now be able to run the node index.js suggest <word>
command.
node index.js create ankifile examples/data_set/example_file.txt -p -r -i
examples/data_set/example_file.txt
and puts the results in the default outputs/ankifile.csv
-p
flag-r
flag-i
flagnode index.js create clippy2 examples/data_set/clippy_2.org -d dictionaries/user.json -e newName.csv -t 50
examples/data_set/clippy_2.org
main.json
as well as a custom user.json
for briefs with the -d
flagclippy2-anki.csv
) and puts the results in the custom newName.csv
file with the -e
flag-t
flag, which means that only errors that occured more than 50 times will show up in the final filenode index.js suggest watermelon
watermelon
. Results may vary. Multiple atttempts may yield better results.GPT suggested briefs for "watermelon": WAURL, WA*URPL, WA*EPL