Bring the power of the Gobo Eiffel toolchain directly into Visual Studio Code, providing full language support for the
Eiffel programming language.
This extension lets you edit, navigate, compile and run Eiffel programs seamlessly — ideal for both beginners discovering Eiffel and experienced developers who want an efficient workflow.
✨ Features
Syntax highlighting & language support
Eiffel keywords, comments and strings are highlighted using an up-to-date Eiffel grammar.
Feature navigation
Quickly jump to a feature or feature clause within the current class from the Outline panel.
Feature signatures
Hover to view variable types and feature signatures directly in tooltips.
Go to definition
Navigate instantly to the definition of variables and features using the contextual menu.
Automatically run after compilation in the Terminal panel.
Set arguments and environment variables using Launch Configurations.
Generate and use ECF files for more advanced compilation settings.
Inline error reporting
Compilation errors appear as you type, with red squiggles in the Editor and entries in the Problems panel.
Click an error to jump directly to its location.
Integrated Eiffel Terminal
Open a preconfigured terminal with Gobo Eiffel's environment set up automatically, ready for command-line use.
Debug configurations
Easily create launch configurations for your Eiffel programs.
Pass custom arguments and environment variables, and choose between compile & run, compile-only or run-only modes from the Run And Debug panel or by pressing F5.
Automatic installation of Gobo Eiffel binaries
If needed, the extension can download and installGobo Eiffel and automatically check for updates.
⚙️ User Settings
You can customize the extension in VS Code’s Settings (File → Preferences → Settings → Extensions → Gobo Eiffel) or via settings.json.
Setting
Description
Default
gobo-eiffel.automaticUpdateCheck
Automatically checks for new Gobo Eiffel releases.
true
gobo-eiffel.useNightlyBuild
Use Gobo Eiffel nightly build instead of the latest release.
false
gobo-eiffel.workspaceEcfFile
ECF file to analyze Eiffel classes in current workspace.
null
gobo-eiffel.workspaceEcfTarget
Target in ECF file to analyze Eiffel classes in current workspace.
null
The last two settings are Workspace-specific settings.
If the ECF file is not specified, the extension uses the last ECF file (alphabetically) found at the root of the workspace; otherwise, it falls back to a default ECF file (using Gobo Eiffel libraries and recursive clusters starting at the workspace root).
If the ECF target is not specified, the last target from the selected ECF file is used.
You can also create multiple launch configurations in .vscode/launch.json with different arguments or environment variables for each program.
📦 Commands
All commands are available from the Command Palette or contextual menus: