### Quick Overview

#### The Worksheet Window overview

When you start Eddie in it's default configuration, it will open a Worksheet window. The Worksheet window is a special window - you may execute commands in it, much like in a Terminal shell. Unlike a Terminal, the Worksheet window also works as any other document - you may edit it using most of the same commands, save it's contents, use copy & paste, drag & drop, etc.

To execute a command from the worksheet, you either type the command or move the cursor to a line with an existing command and hit return. You may for instance type `ls -la`. As with Terminal, the contents of the current directory will be printed. Worksheet is a Shell window. There is an actual `bash` shell running in each Shell window. You can use `make`, `cd`, `ls`, `grep`, etc. You may set shell variables, aliases and other shell state from within a Worksheet. Pathname and shell variable completion is supported in the worksheet, you may hit the Tab key to complete a pathname of a file, hit it again to get a list of possible suggestion if there is more than one possible completion.

The contents of a Worksheet is automatically saved by default when Eddie quits. The Worksheet window is instantly accessible-you may reopen the worksheet or bring it to front by pressing Command-0.

#### Eddie Buttons

Eddie comes preconfigured with several buttons. The three clipboard buttons support copy & paste. You may press any of the clipboard buttons to look at the contents of the clipboard.

Pressing on the FunctionPopup button will bring up a popup menu of all the C and C++ functions defined in a text document.

The Magic prototyper button allows you to generate prototypes from a C++ class and paste them into text with just two clicks. It knows about details like pure virtuals, functions inlined inside the class definition (in both cases a prototype is not generated unless you hold down the Windows key), templates, it will remove default function parameters, etc.

The extended clipboards are useful for heavy copy-paste jobs. Each of the three independent clipboards can do the usual Cut/Copy/Paste, in addition to that each can also Swap-Paste (the text replaced by the paste is placed back into the clipboard), operate as a stack, etc. By pressing the clipboard button you may look at the clipboard contents.

Note that in the example figure the first clipboard is being used in stack mode - it contains two entries that may be pasted one after the other.

#### Worksets

Eddie allows you to group files into worksets. Worksets make it easy to navigate a source tree, give access to source control commands, support generating a makefile.

You may add files to a workset that are used to build a the application you are working on, you may also add files that are only being used for a reference.

#### Customizing Eddie

Eddie is fully customizable. A lot of user level settings can be customized in the Application Settings dialog. Here you may change the colors of syntax coloring, cursor types, etc. Keyboard shortcuts and other settings can be customized by editing the UserStartup file. For instance every editing command can be assigned to a specific keyboard shortcut. You may have one or two UserStartup files - Eddie looks for UserStartup in it's parent directory and in `/boot/home/config/settings/Eddie/UserStartup` in that order. If you mostly like the default UserStartup file that comes with Eddie and only add a few changes to it, you can use the `/boot/home/config/settings/Eddie/UserStartup` for these changes and keep the original UserStartup unchanged. The default UserStartup comes with keyboard shortcuts preconfigured to match a keyboard map simillar to MPW, BeIDE or BBEdit. An Emacs-like keymap is also available.