Getting started with the HLASM Editor
The HLASM Editor shares common behavior with the other Eclipse language editors, but also provides language-specific enhancements such as syntax highlighting and content assistance. To open a file in the HLASM Editor, right-click and select .
To set the HLASM Editor as the default editor for specific file types, open the
Preferences window and click
.
To set the HLASM Editor as
the default editor for all file types defined in the HLASM Source File
content type, do these steps:
- Open the Preferences window and click .
- Expand Text and then select HLASM Source file.
- In the Associated editors list, select HLASM Editor, and then click Default.
When you make this association, you can double-click a file to open it in the HLASM Editor.
If one of the following conditions is true,
the file opens in read-only mode:
- If you open an MVS file that is locked on the MVS Files subsystem, the editor opens it in read-only mode and issues a locked file warning. A file might be locked because it is already open by another user or process.
- If an MVS file contains characters that cannot be correctly converted from one encoding (code page) to another and then back to the original encoding, the file is opened in read-only mode and the characters that cannot be converted correctly are highlighted.
- If the Browse action is used to open the file.
Note: Saving an MVS file
when some of the line lengths exceed the record length limit opens
a file truncation warning. Continuing with the save results in truncated
lines.
Supported features
For a complete list of the editing features supported by the HLASM Editor, see Features of language editors. The following
is a brief description of supported features. For more information, click the links in this list
- Content assist
- The content assist feature suggests symbols, instructions, default
macros that are defined in SYS1.MACLIB, and local custom macros appropriate to
the cursor location in the editor. To open content assist, press
Ctrl+Spacebar.
- Find references
- The Find References action
in the editor locates occurrences of selected language elements. When you select an element in the
code, other instances are displayed in the Search results view and highlighted
in the editor.
- Hover help
- Hover help is available for symbols,
instructions, copy members, default macros that are defined in SYS1.MACLIB,
local macros defined in a local property group, and custom macros that are defined in the
program.
- Outline view
- When you open a file in the editor, an outline of the file opens in
the Outline view. Click an item in the view to locate it in the editor. As you
view the source, you can use the Outline view to efficiently explore and
navigate the code of the program. By looking through the items in this view, you can see the
internal routines, and directly navigate to one by selecting it. These elements are included in the outline view: macros, CSECTs, DSECTs, RSECTs, COMs, LOCTRs,
branch targets, and symbol names.
- Open declaration
- Opens a link to the source file where a symbol, copy member, or default macro is defined; or to the location where a custom macro in the Assembler program is defined.
- Real-time syntax checking
- Real-time syntax checking automatically validates the syntax of HLASM
code and displays error information in the editor margin. Support for real-time syntax
checking is limited. For more information about the limitations, see Real-time syntax checking.
- Syntax coloring
- The editor displays different language elements in different colors. Syntax coloring is not
configurable.
Customizing the editor
To customize the HLASM Editor to suit your preference, see Setting HLASM Editor preferences.
Editing toolbar
You can access several editing tools by using the editing toolbar:
Toggle Block Selection Mode enables block selection of text. Enabling block selection changes the editor font to a fixed-width font.
Show Whitespace Characters displays a small dot for white-space characters and a paragraph mark for end-of-line markers.
Shortcut keys
For a list of shortcut keys for the editor, click Help >
Show Active Key Bindings or press Ctrl+Shift+L (on Windows) or +Shift+L (on macOS).
Status bar
The status bar at the bottom of the workspace provides the following information about files that
are open in the editor:
- The read/write indicator displays Writable or Read-Only.
- The edit mode indicator displays Insert or "Overwrite".
- The line:column indicator displays the line and column position of the edit cursor.
Limitations
The following list contains the general limitations of the HLASM Editor.
To see limitations specific to individual features, refer to the corresponding HLASM Editor help topic.
- No support for embedded languages
- No support for the rename function
- No support during debug sessions or in code coverage reports
- If the file you are editing is large or the property group that is associated with it defines a large number of copy libraries, the performance of content assistance and hover help might be affected.
- The Outline view supports macros that are defined in the Assembler program and local custom macros. Calls to the default SYS1.MACLIB macros are not displayed in the Outline view.
- Syntax highlighting does not correctly highlight code in these situations:
- Multiline strings
- Continuation lines if they do not begin at column 16
- Noncontinuation lines that begin at column 16
- Does not recognize continuation lines that begin at column 17 or beyond as comments
- Reporting of syntax errors is limited. Undeclared variables, for example, do not generate errors.
- For files that are opened from the Git Repositories view, but not contained in an
Eclipse project, the HLASM Editor has these limitations:
- Syntax errors show in the editor, but the Problems view is not populated.
- The Outline view is not populated.
- The syntax error messages are in English, and are not translatable.
- Although the toolbar includes a
Real Time Syntax Checking button, it has no function. Use the Disable problems check box on the HLASM Editor preferences page to enable and disable real-time syntax checking.
- The Open Declaration action can locate symbols that are declared in the current file or in a copy member, but symbols that are declared in macros are not supported.
- Block commenting is not supported.
- If you use the Generate ZAPP command for property groups that define macro libraries in either local or remote Assembler files, the macro library definitions are not saved to the ZAPP file.
- You might receive the error java.io.UncheckedIOException: java.net.BindException: Address already in use: bind in the error log of your workspace. This error is caused by a known LSP4E issue. To work around this issue, kill all java processes and restart the product.
- If the file you are editing has references to many default macros defined in
SYS1.MACLIB, you might experience these issues:
- Performance problems with the editor.
- The Outline view might not be displayed.
- Local macros may not be displayed in the Outline view.
- If a property group is configured with a local custom macro directory and the macro library is
removed from the property group that is associated with an assembler file, the IDz workspace may
hang when the assembler file is opened.
Workaround: Add the macro library to the property group again.
The following functions available for HLASM files in the z Systems LPEX Editor are not
supported in the HLASM Editor. This list is not comprehensive.
- Autosave
- Block commenting
- Build errors in the Remote Error List
- Certain syntax errors, such as unknown instructions, missing labels on branch statements, and tab characters
- Custom comment handling
- Remote custom macro support
- Customized commands for the editor context menu
- ISPF editor commands
- JCL Submit command
- Line break conversions
- Maintaining column alignment for DBCS editing
- Nesting display
- Outline elements from copy members
- Outline filtering
- Sequence number support
- Task tags
- Templates