PL/I Language SupportPL/I Language Support enhances the PL/I programming experience on your IDE. The extension leverages the language server protocol to provide syntax highlighting and coloring, and diagnostic features for PL/I code, compiler options, and include files. PL/I Language Support is available as a VS Code extension, and on an interactive playground (development and main branches). PL/I Language Support recognizes files with the extension This extension is a part of the Zowe open-source project, hosted by the Open Mainframe Project. To contribute and report issues, visit our Git repository. PL/I Language Support is part of the Code4z experience from Broadcom, which offers a modern experience for mainframe application developers. To get started with Code4z, check out our foundational extension pack. Address Software RequirementsThere are no client or server-side prerequisites for PL/I Language Support. Integrate with Zowe ExplorerIntegrate PL/I Language Support with Zowe Explorer to retrieve your PL/I source code stored on mainframe data sets. PL/I Language Support and Zowe Explorer are both available as part of the Code4z Foundation pack. Language Support FeaturesPL/I Language Support provides the following PL/I syntax awareness features: Syntax and Semantic Check for CodeThis feature checks for mistakes and errors in PL/I code, including compiler options. The syntax check feature reviews the whole content of the code and suggests fixes, and the semantic analysis highlights incorrect names of variables and include files. The syntax check feature also validates built-in functions, pseudovariables, and subroutines which must be explicitly declared. Syntax HighlightingThe extension enables syntax highlighting for PL/I code. Syntax ColoringContrasting colors are used in displayed code for ease of identifying and distinguishing keywords, variables, type functions, compiler options, paragraphs, and sections. Outline View and BreadcrumbsThe extension enables outline view and the breadcrumbs navigation bar at the top of the edit window, which show the structure of elements within the program and allow easy navigation between them. Code SnippetsBefore you write your PL/I code from scratch, search the snippet library for useful templates.
You can also insert a code snippet by typing the name of the snippet in your code and clicking on the autocomplete text. Preprocessor SupportPL/I Preprocessors process source code before compilation. They support complex logic, variable manipulation, and string processing to generate optimized or customized code. All PL/I Core Preprocessors are supported by PL/I Language Support. Include File SupportThe PL/I Language Support extension supports include files used in your source code as long as they are stored locally in an /inc folder in your workspace, or in another folder which you specify in a processor group. Files with the extensions The The Find All References and Go To Definition functionalities are extended to work for occurrences of include file names, variables and paragraphs in the main PL/I file.
CICS and SQL Built-In Variable SupportThe PL/I Language Support extension supports the built-in variables for CICS, SQLCA and SQLDA. Hover over a built-in variable to display its definition. Type Function SupportThe PL/I Language Support extension supports all PL/I type functions. Hover over a type function to display its definition. Configure Processor GroupsConfigure processor groups to link specific programs with compiler options, folders that contain include files, and non-standard include file extensions. You define processor groups in a The
Example Program Configuration FileThe program configuration file,
Each element contains the following parameters:
Example Processor Group ConfigurationUsing the example
Dynamic Include File ResolutionYou can use the VS Code Quick Fix feature to dynamically resolve include files that are stored in a subfolder of your workspace. For this feature to work correctly, your
|

