Winter 2021 CS 32

Programming Assignment 4
Wurd

Time due: 11:00 PM Thursday, March 11

The Project 4 specification document is posted.

Updates:

Here are skeletons for Windows, Mac (Xcode), Mac (command line), and Linux. If you look at main.cpp, you'll see the four lines that you are allowed to modify in main.cpp (even though you won't be turning it in) to customize the default path to a dictionary file and the color scheme, in case you find dark red on black to be hard to read.

You don't even need the editor framework for working on StudentUndo and StudentSpellCheck, which are independent of each other. For StudentSpellCheck for example, just take the StudentSpellCheck.h and StudentSpellCheck.cpp files from any skeleton, write a tester.cpp file with a main routine that creates a StudentSpellCheck object, call various member functions on it, and verify they behave as they should. The spec points you to our File I/O writeup and a presentation about the trie data structure.

Unzip the sample zip file for Windows, macOS, or Linux, change into the Wurd directory, and read the README file for information on running the sample executable.

Here are the commands you can give to Wurd:

Up, Down, Left, Right arrows
Move the cursor
Home (Fn+Left on a Mac)
Move to start of the current line
End (Fn+Right on a Mac)
End of the current line
PgUp (Fn+Up on a Mac)
Up one page
PgDown (Fn+Down on a Mac):
Down one page
Delete (Fn+Delete on a Mac)
Delete the character under the cursor
Backspace (Delete on a Mac)
Backspace over the previous character
Ctrl-Z
Undo last change
Ctrl-S
Save current the file
Ctrl-L
Load a new file (on success, discard any changes to the current file)
Ctrl-D
Load a new dictionary (on success, discard the entire old dictionary)
Ctrl-X
Exit the editor (discard any changes to the current file)