Discover how to personalize your PowerOn Pro user experience.
PowerOn Pro ships with a number of configurable settings to personalize your VS Code experience as you develop.
Auto Associate PowerOn Workspace
If more than 50% of your active workspace has known PowerOn file extensions, a file association for poweron on the path will be added automatically.
Auto Deploy `#INCLUDE` Files
Controls how #INCLUDE files are deployed when deploying a PowerOn (only for non-Remote Syms).
Auto Disconnect Sym
Controls when your active Sym connection should automatically disconnect.
Auto Validate PowerOn
Controls when the language server runs PowerOn validation. Useful if you like to validate your PowerOn file each time you save.
Batch
Batch related configuration options specific to the SSH connection type.
Fetch Report Timeout (SSH)
The maximum time to wait (min) for the completion of a batch PowerOn run.
Queue Override (SSH)
The batch queue number to use when poweronPro.batch.queueSelection is set to override.
Queue Selection (SSH)
Controls how the batch queue is selected for a batch PowerOn run. The available options will either use the first available queue, prompt you to select a queue, or use the override value set by the setting.
Report Viewer
Controls where batch reports are displayed.
CLI Worker Timeout
The maximum time (sec) to wait for the initialization of the Symitar CLI workers which is only used with an SSH connection type to Symitar.
Debug
Enables debug logging for the @libum-llc/symitar library. The logs will appear in the PowerOn Pro output channel.
Diagnostics
Real-time diagnostics configuration options which are triggered when the PowerOn changes in an active text editor.
Data Types
Plus Shows incorrect variable assignments and invalid data type declarations as errors for PowerOn files.
Constant Reassignment
Plus Warns when a constant is reassigned in PowerOn files.
Defined Variables
Plus Shows undefined variables or procedures as errors for PowerOn files.
Expression Validation
Plus Validates operator and operand type compatibility in expressions for PowerOn files.
Field Validation
Plus Validates field mnemonics against their record types. For example, using a SHARE field mnemonic in a context that expects an ACCOUNT field will be flagged as an error.
Function Validation
Plus Validates function names and parameter counts. Unknown function names and incorrect numbers of arguments will be flagged as errors.
Statement Validation
Plus Validates FMPERFORM and TRANPERFORM statements, including record type compatibility, allowed operations, TARGETFILE keyword usage, and transaction codes.
Syntax Errors
Plus Shows syntax errors detected by the PowerOn parser. These are structural issues in your PowerOn code such as missing keywords, unexpected tokens, or malformed statements.
Unused Variables
Plus Shows unused variables as dimmed for PowerOn files.
CodeLens References
Plus Shows an N references CodeLens above defined variables and procedures.
Formatter
Configuration options for the PowerOn code formatter.
Align Defines
Align = signs in DEFINE sections for table-like readability.
Align Logical Operators
Align logical operators (AND, OR) vertically at the end of each line in multi-line conditions. Forces line breaks at each operator.
Expand Parentheses
Expand parenthesized expressions onto multiple lines with opening/closing parentheses on their own lines and content indented.
Format On Save
Automatically format PowerOn files when saving.
Indent Size
Number of spaces per indentation level (or tab width when useTabs is enabled).
Keyword Case
Casing for PowerOn keywords, database records, and fields (e.g., TARGET, ACCOUNT, CLOSEDATE).
Max Blank Lines
Maximum consecutive blank lines to preserve within divisions.
Print Width
Maximum line length for PowerOn code before wrapping.
Section Spacing
Number of blank lines between major divisions (TARGET, DEFINE, SETUP, SELECT, SORT, PRINT, TOTAL, PROCEDURE).
Space After Delimiter
Add space after comma delimiters in function parameters (e.g., FUNC(a, b) vs FUNC(a,b)).
Space Around Operators
Add spaces around all operators: assignment (=), arithmetic (+, -, *, /), and comparison (<>, <, >, <=, >=). Logical operators (AND, OR,
Space Around Operators Exclude
Comma-separated list of statement types to exclude from space-around-operators formatting for the = operator (e.g., COL,DATASIZE).
Use Tabs
Use tabs instead of spaces for indentation.
Uppercase Identifiers
Uppercase all identifiers (variable names, procedure names). PowerOn is case-insensitive; some shops prefer all-caps for mainframe consistency.
Include Paths
Additional absolute directory paths to search for #INCLUDE files. These directories will be searched in addition to the directory of the PowerOn file being processed.
Local Symitar Path
Plus The root path where your local Sym directories are synchronized. This is a required field for the feature and it's recommended to set as a path not directly in a typical folder structure for projects.
Offline Validation
Controls whether a randomly named PowerOn is created, uploaded for validation, then deleted.
Preferred Case
Controls the case of keywords, functions, variables, and records. Additionally, you'll see this reflected in other relevant areas such as hovers and snippets.
Semantic Tokens
Plus Enables analyzer-driven semantic syntax highlighting with distinct tokens for variables, records, fields, procedures, constants, and literals.
Remote Sym SFTP Concurrency
Plus The number of files to download simultaneously when using SFTP sync (used by Remote Syms and Reports).
Remote Sym Sync Method
Plus Controls how Remote Syms are synchronized with the Symitar server.
sftp: Use SFTP for synchronization (no external dependencies required)
rsync: Use rsync for synchronization (requires WSL on Windows, rsync and sshpass installed)
Reports
Configuration options for the Symitar Explorer Reports feature.
Background Sync Interval
Plus Background sync interval in minutes for reports. Set to 0 to disable background syncing.
Retention Days
Plus Number of days of reports to keep locally synced.
SSH Port
The port to use when connecting to the Symitar host. For almost all cases this should be 22 but if you have port-forwarded and need the flexibility to use SSH over a different port, this is how you'd do it.