Start a New Project
When the ESF Edit is started, no project is initially open. The main menu makes it easy to open an existing project or to create a new project. In this section of the main menu, it is also possible to save a project later.
To start a new project, the first entry in the project menu New must be selected. The ESF Edit generates a new, empty project to work on afterwards. If a project has already been opened, a corresponding warning is issued first. The currently opened project must first be closed. The warning points to this fact and allows the already opened project to be saved by a mouse click before closing, to close it without saving or to abort the process.
Create Space for Content
The newly created project is initially empty. If you open the Content Pages tab in the project tree, you will not see any entries. A content page must be added to the project to begin "programming". This can be done via the Contents tab in the main menu of the ESF Edit. Afterwards, the new content page can be seen in the content pages tab of the project tree and can be selected.
Insert and Wire Snippets
Now you can start filling the content page. For this small example, a Text Snippet and an End Snippet must be placed in the work area. To do this, the Text Snippet and the End Snippet must be marked one after the other in the toolbar on the right, and then the selected Snippet is created by left-clicking on the work area. (For more detailed instructions, see Snippets.)
After the Snippets have been placed, the Snippets need to be connected, to describe the logic of the program. To do this, two cables must be created in the work area. Just click on the cable symbol at the bottom of the toolbar and set the position of both cable ends with two right-clicks in the work area. To tightly connect a Snippet with a cable, simply move the plug of a cable near the appropriate cable slot. (For more detailed instructions, see Cables.)
Insert Text
The program now has a Text Snippet that will be run through. However, no text that can be issued has been deposited yet. To customize the text, the text editor of the Text Snippet must be started. For example, let the Text Snippet say "Hello World!". It is best to give a significant title as well. You should generally get used to giving a meaningful title to the Text Snippets. It will not appear in the text output, but directly on the Text Snippet within the ESF Edit. This significantly increases the legibility of the program for the user / programmer. (For more information see Text Snippets)
The Last Steps
The small example program is certainly not very innovative or extensive, but it should now be functional. This can be tested via the Compile column in the main menu. First, the content page to be tested must be marked right in the content tree. Then the Compile menu is called, the second entry is Test Page.
Below the working area a new panel appears. It contains different tabs with output windows :
- The first tab contains all messages from the compiler. This is the utility in the background that tries to understand and interpret the program arranged by the user in the ESF Edit. In case of success, these messages are only indications that certain structures have been read in or that optimizations have been successfully done.
If one or more errors occurred during the compilation of the program, these are also written here. When a logbook line is marked with an error, the Snippet which causes the error is highlighted in red. In combination with the error message, errors can be corrected quickly. - The second tab contains the output of the program, namely the texts that have been put together through the Text Snippets. In this little example this is "Hello World!".
- The third tab contains values of variables. Scripts often query values from the executing program. However, if the scripts are executed by the ESF Edit for testing purposes, the actual target program is not available. In order to be able to carry out a trial run, the name of the variable and its value can be stored here.
If a script asks for a variable, which has not been stored here during the test, the ESF Edit asks for a value to be set via an input dialog. This is also saved for the future. Variable values can also be changed here at any time to test other variants of the feedback.
Use the Program Elsewhere
The program is currently only available in the ESF Edit. The feedback-generating programs developed in the ESF Edit are intended to run in other programs that provide the data. For this purpose, the project files of the ESF Edit are not suitable. They contain unnecessary information and are not efficiently executable. They have to be put together into an executable file format. This file format does not contain any unnecessary information, such as Snippet locations, and all instructions can be run directly by the runtime.
The process of converting a man-editable file to an executable file is called compiling. This process was already running each time during testing, but the file was only created temporarily in memory and executed by the ESF Edit. In an executable file, all content pages are stored together, so it must always be clear which page should be executed first. This is also necessary in the example project with only one page.
The desired main page must be marked in the content tree on the left side. Then it can be made to the main page via the content menu. There can only ever be one main page. It is highlighted by corresponding symbols in the title. The program starts running with the Start Snippet of the content page set as the main page.
Afterwards, the sample program can be compiled into an executable file. In the Compile menu you will find the corresponding function Compile Project as Executable file. A new dialog box opens, guiding you through this process. In the first line, the destination name of the file that has to be created must be specified. The button with "..." opens a file save dialog, which graphically supports you when setting the file path.
The executables of the ESF Runtime classically have the extension *.sxe based on executable files of the operating system Windows by Microsoft (* .exe). Their structure is not similar to these files, they do not contain a native Windows executable program code. They can only be used by the ESF Runtime to generate texts.
Clicking on Compile starts the process. The progress bar below fills up slowly and indicates the progress of compiling. A small log containing all the messages from the compiler and linker is below the progress bar. You will also receive a final message whether the process was successful or not via a message window.
Congratulations, you have written a small program with the ESF Edit that outputs the message "Hello World!". For example, if you use this program through the LMSA Kit's generate feedback feature, each participant will receive a feedback message with the content "Hello World!". In the next project (coming soon), you will learn how to write larger programs that also generate targeted feedback texts. In connection with the development of feedback-generating programs for the LMSA Kit, we would also like to refer to the Useful Hints section, which explains, among other things, how to activate the support tools for LMSA Kit developers.