JetBrains IDE Plugin

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…

1.2KDownloads
FreemiumPricing

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 uses clause jumps to the referenced unit (dotted, aliased and in '…' forms included), including units whose directory is declared as a unit search path in your .dpr / .dpk / .dproj / .lpi / .lpk project 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 / specialize types, 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/end block
  • Duplicate class/record/interface member
  • Unused local declaration
  • Missing override directive
  • Redundant routine directive
  • Unbalanced compiler directive
  • Trailing comma in uses clause
  • Quick-fix: add missing unit to the uses clause 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 whose interface or program body is supplied by an include
  • Tolerant of real-world quirks: keyword-named identifiers, trailing tokens after end. and label-less case statements

Getting Started

  1. Open the plugin page on JetBrains Marketplace.
  2. Install it in a compatible IDE and restart if prompted.
  3. Open your project and follow the plugin's setup guidance.

Categories

code editingcode toolscompletionformattinginspection

Ready to try Pascal Flow?

Use the free feature set and check the current Pro evaluation and pricing options on JetBrains Marketplace.