#

Ed+ Program Editor |

The Ed+ Program Editor is a Web-based program editor that is easily accessible from the PxPlus Web IDE and the Windows-based IDE Main Launcher. It is also used in the Webster+ Inspector for creating or editing a PxPlus program file.

Like the *IT - Integrated Toolkit, Ed+ provides some of the more common functions for creating and modifying your application programs. These functions are available as Menu Options and Tool Bar Options.

When opening PxPlus programs, NOMADS launches the *IT - Integrated Toolkit by default. To make Ed+ the default program editor, change the setting for the %NOMADS'Program_Editor property to Ed+.

(The Ed+ Program Editor was added in PxPlus 2016.)
(The ability to set Ed+ as the default program editor was added in PxPlus 2023.)

For quick access to a specific part of the file, a Book Marks list of the file's Methods and Labels is provided to the left of the main editor panel. Use the vertical scroll bar to locate the method or label you want to modify and then click on that book mark to jump directly to that location in the file.

To invoke the Ed+ program editor, use one of the following methods:

Location | Method
From the PxPlus IDE Main Launcher | Under the PxPlus IDE category, select Ed+.
From the PxPlus Web IDE | Select Ed+ from the menu bar.
From the PxPlus Command line | Enter: ED+

For the following example, the Ed+ program editor was invoked from the PxPlus IDE Main Launcher (Windows), and then two existing program files were loaded:

## Menu Options

The options below are described in the order in which they appear on the menu bar: File, Edit, Options, Tools, Run, Version Control, Project and Help.

#### Note:
If using the PxPlus Web IDE, the menu bar for the Ed+ program editor is accessed by clicking the Hamburger Menu button beside the Ed+ - Advanced Program Editor title.

File | Description | Keyboard Shortcuts
New | Sets up an empty "No Name" program file. | New: Ctrl+N (Shortcut was added in PxPlus 2019.)
Open | Loads an existing program file. If the editor is asked to open a non-program file, it will try to open the appropriate PxPlus program if the file is one of the following types:
File Type | Program
A PxPlus data file | Opens the File Update Utility
A PxPlus report file (.pvr) | Opens the Report Designer
An HTML file (.htm, .html) | Opens the HTML Editor
If the non-program file is not one of these types, a message will indicate that the file type is invalid and ask if you want the operating system to try opening the file. (The opening of non-program files based on file type was added in PxPlus 2023.) | Open: Ctrl+O (Shortcut was added in PxPlus 2019.)
Find Program | Locates a program file using current search rules. If the search is unable to locate the exact file name requested but does locate an object file with the same file name ending with .pvc, you will be asked if you want to load the .pvc file. If the search is unable to locate the file name requested either with or without the .pvc extension, a message will inform you that the file could not be located. (The search functionality to include files ending with .pvc was added to PxPlus 2017 Update 0002.) |
Close Program | Closes the current program file. If you have made changes to the program without saving them, you will be asked if you want to save the changes. | Close Program: F4
Save | Saves the current program file. If the file has no name, a message will ask if you want to save the current program as a PROGRAM or TEXT file. Respond by clicking the Program or Text button. A separate window launches for entering and saving the file name. | Save: Ctrl+S
Save As Version | Allows you to assign a version number to the current program file, along with a comment. (The Save As Version option was added in PxPlus 2023.) |
Save As Program | Allows you to name and save the current program file. |
Save As Text | Saves the program file in text format. A separate window launches for entering the file name. Clicking the Save button displays a message that asks if you also want to save this file as program code. |
Save All | Saves all the open programs. Any unnamed programs will invoke the "Save as" logic. (The Save All option was added in PxPlus 2023.) |
Properties | Displays the pathname and historical information about the current program file. (The Properties option was added in PxPlus 2023.) |
Print | Prints the current program. | Print: Ctrl+P (Shortcut was added in PxPlus 2019.)
Recent Files | Displays a list of recently opened program and text files. |
Favorite Files | Displays options for adding the current file to or removing it from a list of favorites. A current list of the files marked as favorites is also shown, which can be used when selecting a file to open. |
Exit | Closes the editor and returns to the PxPlus IDE. If you have made changes to a program without saving them, you will be asked if you want to save the changes. |

Edit | Description | Keyboard Shortcuts
Undo | Reverses a change. (The Undo option was added in PxPlus 2023.) | Undo: Ctrl+Z
Redo | Reverses the previous Undo operation. (The Redo option was added in PxPlus 2023.) | Redo: Ctrl+Y
Cut | Selects and removes a segment of code to the Clipboard. You can cut a segment of code from a single line of code or a block of entire lines. When the selection includes more than one line of code, the lines are selected in their entirety. To select a single line in its entirety, begin selection at the leftmost column of that line. (The Cut option was added in PxPlus 2023.) | Cut: Ctrl+X
Copy | Selects and copies a segment of code to the Clipboard. You can copy a segment of code from a single line of code or a block of entire lines. When the selection includes more than one line of code, the lines are selected in their entirety. To select a single line in its entirety, begin selection at the leftmost column of that line. (The Copy option was added in PxPlus 2023.) | Copy: Ctrl+C
Paste | Pastes code from the Clipboard into the current program. Partial lines are inserted at the cursor location. To insert a block of lines, place the cursor at the beginning of the line in front of which you wish to paste. (The Paste option was added in PxPlus 2023.) | Paste: Ctrl+V
Delete | Selects and removes a segment of code. (The Delete option was added in PxPlus 2023.) | Delete: Del
Select All | Selects the entire program. (The Select All option was added in PxPlus 2023.) | Select All: Ctrl+A
Find and Replace |
Find | Invokes the logic to search for a specified text value. The following buttons are provided:
Left/Right Arrows | Click these buttons to search for the previous/next occurrence of the specified text value.
All | Click the All button (beside the Right Arrow button) to highlight all matches in the program.
.* | The RegExp Search toggle button is available if the search text is a regular expression.
Aa | The CaseSensitive Search toggle button is available if the search is case sensitive.
\b | The Whole Word Search toggle button is used to search for the specified text value as a whole word only, rather than as part of another word.
S | The Search in Selection toggle button is used to search only in the selected text.
Find Next | Finds the next occurrence of the currently selected text.
Find Previous | Finds the previous occurrence of the currently selected text.
Replace | Invokes the logic to search for and replace the specified text value. Enter the text value to be replaced, and then below that, enter the replacement text value. The following buttons are provided:
Left/Right Arrows | Click these buttons to search for the previous/next occurrence of the specified text value to be replaced.
All | Click the All button (beside the Right Arrow button) to highlight all matches in the program.
Replace | Click this button to replace the currently found text with the replacement text.
All | Click the All button (beside the Replace button) to replace all matches in the program.
.* | The RegExp Search toggle button is available if the search text is a regular expression.
Aa | The CaseSensitive Search toggle button is available if the search is case sensitive.
\b | The Whole Word Search toggle button is used to search for the specified text value as a whole word only, rather than as part of another word.
S | The Search in Selection toggle button is used to search only in the selected text.
(The Find and Replace sub-menu was added in PxPlus 2023.) | Find: Ctrl+F Find Next: Ctrl+K Find Previous: Ctrl+Shift+K Replace: Ctrl+H
Goto Line Number | Opens a separate Jump to line window for entering a line number to go to in the program. This window consists of the following:
Line no. | Enter the line number to go to.
Go | Positions the insertion cursor at the beginning of the specified line number.
Cancel | Cancels the operation, closes the Jump to line window and returns to the main editor panel.
(The renaming of the "Goto" option to "Goto Line Number" was added in PxPlus 2026.) | Goto Line Number: Ctrl+G (Shortcut was added in PxPlus 2019.)
Previous Goto Location | Allows you to go backward through a sequence of previously entered or selected "Goto" locations, one at a time, within an open program file, starting with the most recent. This option is enabled after two or more "Goto" locations have been entered or selected. "Goto" locations are positions in a file that you jump to by using the Goto Line Number option or by selecting the file's methods and labels from the Book Marks list on the left. When the program file is closed, the "Goto" locations are cleared. (The Previous Goto Location option was added in PxPlus 2026.) |
Next Goto Location | Allows you to go forward through a sequence of previously entered or selected "Goto" locations, one at a time, within an open program file. This option is enabled only after you use the Previous Goto Location option. "Goto" locations are positions in a file that you jump to by using the Goto Line Number option or by selecting the file's methods and labels from the Book Marks list on the left. When the program file is closed, the "Goto" locations are cleared. (The Next Goto Location option was added in PxPlus 2026.) |
Autocomplete | Displays a drop-down list with suggestions for completing the current word you are typing. Example: The Autocomplete suggestions are based on PxPlus directives, system functions and system variables. It also makes suggestions based on the text already in the program; i.e. it can suggest variable names and statement labels if they already exist in the program. If the Live Autocomplete check box (in Web Editor Preferences) is selected, the Autocomplete drop-down list will pop up automatically as you are typing without the need to manually invoke it. (The Autocomplete option was added in PxPlus 2023.) | Autocomplete: Ctrl+Space
Advanced |
Duplicate Lines | Creates a duplicate of the selected lines.
Move Lines Up | Shifts all the selected lines up one line.
Move Lines Down | Shifts all the selected lines down one line.
Sort Lines | Alphanumeric ascending sort of all selected lines.
UPPERCASE | Converts the current selection entirely into uppercase.
lowercase | Converts the current selection entirely into lowercase.
Toggle Comment | Comment/Uncomment the currently selected lines of code.
(The Advanced sub-menu was added in PxPlus 2023.) | Duplicate Lines: Alt+Shift+Down Move Lines Up: Alt+Up Move Lines Down: Alt+Down Sort Lines: Ctrl+Alt+S UPPERCASE: Ctrl+U lowercase: Ctrl+Shift+U Toggle Comment: Ctrl+/

Options | Description
Preferences | Launches the Web Editor Preferences window for specifying additional options.

Tools | Description | Keyboard Shortcuts
Check Errors | Checks for errors in the current program. |
Next Error | Goes to the next line that has a coding error. (The Next Error option was added in PxPlus 2023.) | Next Error: Alt+E
Previous Error | Goes to the previous line that has a coding error. (The Previous Error option was added in PxPlus 2023.) | Previous Error: Alt+Shift+E
Strip Line numbers | Strips line numbers from a program that currently has line numbers. All line number references will be replaced with statement labels or *same or *next logical statement labels where applicable. You are prompted for a label prefix that will be used for the base label name for any labels that must be generated. |
Reformat | Reorganizes the lines of code for the current program by applying proper formatting for indentation, if applicable. |
Compare Programs | Invokes the Program Compare Utility that is used to compare different versions of a program to detect any differences. (The Compare Programs option was added in PxPlus 2023.) |
Macro | Macros are a sequence of keystrokes that can be recorded and then played back on demand to save time. For example, you may have a long list that you want to reformat. Instead of doing it manually, you can record a macro of the keystrokes while making the change to one item and then play back the macro for all other items in the list.
Start Recording | Start macro keystroke recording.
Stop Recording | Stop macro keystroke recording.
Play | Play a previously recorded keystroke macro.
(The Macro sub-menu was added in PxPlus 2023.) | Start Recording: Ctrl+Alt+E Stop Recording: Ctrl+Alt+E Play: Ctrl+Shift+E

Run | Description
PxPlus | Opens the PxPlus command window.
PxPlus Program | Runs the current program.
Program Setup | Displays the Program Launch Setup window for entering the Lead Program, Argument List and System Parameters.
Panel | Invokes the panel specified using the Panel Setup option. If no panel was specified, the Panel Launch Setup window is invoked for specifying a Library and Panel.
Panel Setup | Displays the Panel Launch Setup window for specifying a Library and Panel.
Nomads | Launches the NOMADS Session Manager.
Utilities | Invokes the System Utilities window.
HTML Editor | Invokes the HTML Editor window.
Report Designer | Invokes the Report Designer window.
Run | Allows you to select a program to run.

(The Run menu was added in PxPlus 2023.)

Version Control | Description
TortoiseSVN Setup | Sets up TortoiseSVN. See PxPlus Version Control System Using TortoiseSVN.
TortoiseSVN Commit | Invokes the TortoiseSVN Commit procedure to commit the modified files in the current directory to the repository. Selections are Current Program, All Open Programs, Program or File, and Directory. See Committing Changes.
TortoiseSVN Update | Invokes the TortoiseSVN Update procedure to update files in the current directory. Selections are Program or File and Directory. See Updating Your Files.

(The Version Control menu was added in PxPlus 2023.)

Project | Description
Create New Project | Launches the Create Project dialogue for entering a new project for the current working directory. Click the Query button to select a different working directory.
Add to Project | Launches the Add to Project dialogue for adding the current task to an existing project selected from the Project drop box. To manage all the tasks within a project, see Project Maintenance. For information on adding tasks to a project from other locations, see Adding Tasks to Projects from Other Locations.

(The Project menu was added in PxPlus 2023.)

Help | Description
ED+ Program Editor | Launches the Ed+ Program Editor Help.
Keyboard Shortcuts | Displays a list of all supported keyboard shortcuts. (The Keyboard Shortcuts option was added in PxPlus 2023.)

## Tool Bar Options

The tool bar options are listed below.

Tool Bar Button | Description
Load program | Loads a program from a file.
Find program | Finds a program using search rules. If the search is unable to locate the exact file name requested but does locate an object file with the same file name ending with .pvc, you will be asked if you want to load the .pvc file. If the search is unable to locate the file name requested either with or without the .pvc extension, a message will inform you that the file could not be located. (The search functionality to include files ending with .pvc was added to PxPlus 2017 Update 0002.)
New program | Starts a new program and clears the edit buffer.
Save program | Saves the program.
Save As Program | Saves the program to a different file. A separate window launches for entering the file name.
Save As Text | Saves the program file in text format. A separate window launches for entering the file name. Clicking the Save button displays a message that asks if you also want to save this file as program code.
Undo | Reverses a change. #### Note: If you make a change to a file and then switch to a different file, the Undo/Redo for the modified file will be cleared.
Redo | Reverses the previous Undo operation.
Cut text | Cuts text to the Clipboard.
Copy text | Copies text to the Clipboard.
Paste text | Pastes text from the Clipboard.
Force update | Forces update of the program to the server.
Reformat current program | Reorganizes the lines of code for the current program by applying proper formatting for indentation, if applicable.
Go to Line Number | Opens a separate Jump to line window for entering a line number to go to in the program. Same functionality as the Goto Line Number option (Edit menu). (The Go to Line Number toolbar option was added in PxPlus 2026.)
Previous Goto Location | Allows you to go backward through a sequence of previously entered or selected "Goto" locations, one at a time, within an open program file, starting with the most recent. Same functionality as the Previous Goto Location option (Edit menu). This button is enabled after two or more "Goto" locations have been entered or selected. (The Previous Goto Location option was added in PxPlus 2026.)
Next Goto Location | Allows you to go forward through a sequence of previously entered or selected "Goto" locations, one at a time, within an open program file. This button is enabled only after you use the Previous Goto Location option. (The Next Goto Location option was added in PxPlus 2026.)
User preferences | Launches the Web Editor Preferences window for specifying additional options.
Theme | Click the drop-down arrow to select from a list of available themes for the editor display. (Default: Github)
Search | Invokes the logic to search for a specified text value. The following buttons are provided:
Left/Right Arrows | Click these buttons to search for the previous/next occurrence of the specified text value.
All | Click the All button (beside the Right Arrow button) to highlight all matches in the program.
.* | The RegExp Search toggle button is available if the search text is a regular expression.
Aa | The CaseSensitive Search toggle button is available if the search is case sensitive.
\b | The Whole Word Search toggle button is used to search for the specified text value as a whole word only, rather than as part of another word.
S | The Search in Selection toggle button is used to search only in the selected text.
Replace | Invokes the logic to search for and replace the specified text value. Enter the text value to be replaced, and then below that, enter the replacement text value. The following buttons are provided:
Left/Right Arrows | Click these buttons to search for the previous/next occurrence of the specified text value to be replaced.
All | Click the All button (beside the Right Arrow button) to highlight all matches in the program.
Replace | Click this button to replace the currently found text with the replacement text.
All | Click the All button (beside the Replace button) to replace all matches in the program.
.* | The RegExp Search toggle button is available if the search text is a regular expression.
Aa | The CaseSensitive Search toggle button is available if the search is case sensitive.
\b | The Whole Word Search toggle button is used to search for the specified text value as a whole word only, rather than as part of another word.
S | The Search in Selection toggle button is used to search only in the selected text.
Display Shortcut List | Displays a list of all supported keyboard shortcuts. (The Display Shortcut List option was added in PxPlus 2023.)
Help | Launches the Ed+ Program Editor Help.

## Web Editor Preferences

The Web Editor Preferences window is used to specify additional options to be applied when working with the Ed+ program editor.

To invoke this window, select Preferences from the Options menu or click the User Preferences tool bar button beside the Theme drop box.

This window consists of the following:

User Identification | A locked field that displays the current User ID.
Font Size (px) | Click the drop-down arrow to select the font size in pixels. (Default: 12) (The Font Size option was added in PxPlus 2023.)
Default Theme | Click the drop-down arrow to select the default theme from a list of available themes. Select the Use Current text to change the default theme to match the Theme selected on the main editor panel.
Show hidden text | Select to display hidden text. (Default: Off)
Use Edit mode | Allows you to change existing statements in the program. (Default: On)
No statement numbers | If selected, statement numbers will not be shown for a file being created or opened. (Default: Off)
Suppress LET | Displays the code without LET directives. (Default: Off)
Live Autocomplete | If selected, the Autocomplete drop-down list will pop up automatically as you are typing with suggestions for completing the current word. (Default: Off) The Autocomplete suggestions are based on PxPlus directives, system functions and system variables. It also makes suggestions based on the text already in the program; i.e. it can suggest variable names and statement labels if they already exist in the program. (The Live Autocomplete option was added in PxPlus 2023.)
Auto Bracket | If selected, when you type an "open" square bracket, parenthesis, or double quote, the matching "close" symbol for the pair is inserted automatically. (Default: Off) (The Auto Bracket option was added in PxPlus 2023.)
Enhanced Format | When an existing program without line numbers is loaded, the program is automatically reformatted. This is the same as clicking the Reformat toolbar button or selecting the Reformat option from the Tools menu. This functionality applies to programs that are opened after this preference is saved. (The Enhanced Format option was added in PxPlus 2026.)
Tab Stops | Number of spaces that the insertion point will move each time the Tab key is pressed. (Default: 6) To change, click the adjacent up/down arrows or enter the value. (The default tab stop change from 5 to 6 was added in PxPlus 2023.)
Insert Tabs as Spaces | Tabs will be inserted as spaces instead of tabs. Example: If the Tab Stops option is set to 6, then six spaces will be inserted instead of a literal tab character. (The Insert Tabs as Spaces option was added in PxPlus 2023.)
Mixed case Variables | Displays the code with mixed case variables. (Default: On)
Lower case Variables | Displays the code with lowercase variables. (Default: Off)
Lower case Directives | Displays the code with lowercase directives. (Default: Off)
List from top after Goto | Select this option when you want the Goto function (on the Edit menu) to display the specified "go to" statement number or line label as the starting line at the top of the program display. (Default: Off) (The List from top after Goto option was added in PxPlus 2023.)
Server update | Indicates the frequency that the program is updated to the server. Click the drop-down arrow for a list of selections: Immediate 5 Seconds 10 Seconds (Default) 20 Seconds 30 Seconds 1 Minute
When loading program file check for text version in <same path>.pxprg | Controls how you want to handle the possible existence of a text version (.pxprg) of the program file being loaded. Click the drop-down arrow for a list of selections: Yes, check and use .pxprg if found (Default) No, don't check for presence of .pxprg Ask which to use if .pxprg is present
When loading program file check if SVN source version exists | Controls how you want to handle the possible existence of a SVN source version of the program file being loaded. Click the drop-down arrow for a list of selections: Yes, check and use the SVN text source (Default) No, edit program object code and let OS update SVN Ask which to use if SVN text source exists
When saving a program to text file, and program file exists | Controls how you want to handle the saving of a program to a text file if a corresponding program file already exists. Click the drop-down arrow for a list of selections: Automatically update the program file as well (Default) Don't update the program file Ask if you also want the program file updated
Save | Saves the current settings and closes this window, returning to the main editor panel. These settings are saved to the appropriate project-related files. (The ability to save settings by project was added in PxPlus 2023.)
Cancel | Cancels any changes to the settings and closes this window, returning to the main editor panel.