Pascal Flow
Pascal Flow brings modern, high-performance language support for the Pascal ecosystem to JetBrains IDEs — built for reading, navigating and confidently working with both fresh and large-scale legacy Delphi and Free Pascal projects. It…
Use the free feature set and check the current Pro evaluation and pricing options on JetBrains Marketplace.
What Pascal Flow Does
Pascal Flow brings modern, high-performance language support for the Pascal ecosystem to JetBrains IDEs — built for reading, navigating and confidently working with both fresh and large-scale legacy Delphi and Free Pascal projects. It understands real-world code, including multiple dialects, conditional compilation and shared include files, so you get accurate highlighting, navigation and code insight out of the box.
Supported files
- Pascal sources:
.pas,.dpr,.lpr,.pp,.dpk - Include fragments:
.inc - Form files:
.dfm,.lfm,.fmx - Project files:
.lpi,.lpk,.dproj,.groupproj
Editor
- Syntax highlighting for Pascal and DFM/LFM forms, with a configurable color scheme
- Code folding, brace matching, line and block comments
- Code completion, including compiler directives
- Code formatting and dedicated code style settings
- Quick documentation (Ctrl+Q and on-hover popup) and breadcrumbs: the popup shows the real Pascal signature — parameters, return type, ancestor class, property accessors, const value, field type — with the leading doc-comment attached to the declaration included when present
- Dialect-aware highlighting of contextual keywords and inactive (conditionally compiled) code
Navigation & refactoring
- Go to Class and Go to Symbol for units, types, routines, constants, properties and fields
- Go to Declaration on a
usesclause jumps to the referenced unit (dotted, aliased andin '…'forms included), including units whose directory is declared as a unit search path in your.dpr/.dpk/.dproj/.lpi/.lpkproject file - Gutter markers between a routine's interface declaration and its implementation — in both directions, even when the body lives in an
{$I}include - Class and interface hierarchy gutter markers: jump from a type to its supertypes, subclasses or implementing classes, and from a method to the one it overrides, the methods overriding it, the interface method it implements, or the classes implementing an interface method — across units
- Project-wide, case-insensitive Find Usages backed by the stub index — call sites, type references, property and field reads/writes are listed across every unit
- Reference resolution and Find Usages, including compiler-directive include navigation, generic /
specializetypes, and nested-procedure and anonymous-method scopes - Rename refactoring backed by named-element PSI
- Structure view for fast in-file navigation
Code inspections
- Empty
begin/endblock - Duplicate class/record/interface member
- Unused local declaration
- Missing
overridedirective - Redundant routine directive
- Unbalanced compiler directive
- Trailing comma in
usesclause - Quick-fix: add missing unit to the
usesclause when the unresolved identifier is declared in another indexed unit
Parser & conditional compilation
- Realistic Delphi/FPC parsing of generics, anonymous methods, inline variables, helpers, class operators, variant records and assembler blocks
- Wide dialect coverage — Delphi, Free Pascal, Turbo Pascal and MacPas — including context-sensitive operators, objc classes,
specialize-qualified types and the full range of routine and variable modifiers {$IFDEF}evaluation with project-configurable conditional defines, plus MacPas{$ifc}/{$setc}/{$endc}directives- Include-aware indexing that propagates
{$I}include defines across the project, including units whoseinterfaceor program body is supplied by an include - Tolerant of real-world quirks: keyword-named identifiers, trailing tokens after
end.and label-lesscasestatements
Getting Started
- Open the plugin page on JetBrains Marketplace.
- Install it in a compatible IDE and restart if prompted.
- Open your project and follow the plugin's setup guidance.
Ready to try Pascal Flow?
Use the free feature set and check the current Pro evaluation and pricing options on JetBrains Marketplace.