Skip to content

msarson/Clarion-Extension

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1,517 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Clarion Extension for Visual Studio Code

Version Installs

Professional Clarion language support for Visual Studio Code with intelligent code navigation, IntelliSense, and build integration.

πŸš€ Quick Links


✨ Key Features

🎨 Clarion & Template Language Support

Full language support for Clarion code, basic support for templates.

  • Clarion files (.clw, .inc) - Complete syntax highlighting and IntelliSense
  • Template files (.tpl, .tpw) - Syntax highlighting with 100+ template keywords
  • Code folding for structures and template blocks
  • Context-aware coloring for Clarion code
  • Note: Template files have syntax highlighting only (no IntelliSense/navigation)
  • Learn more about Code Editing β†’

πŸ’‘ Signature Help & Documentation

Get instant parameter hints and documentation - works immediately, no solution needed!

  • 148 built-in functions with parameter hints
  • Method overload support β€” all overloads shown with full signatures
  • Hover documentation for all symbols
  • Signature help for class methods including inherited members
  • Learn more about Signature Help β†’

πŸ€– IntelliSense β€” Dot-Triggered Member Completion

Type SELF. or MyVar. for instant context-aware member suggestions.

  • Resolves SELF., PARENT., MyVar., or ClassName. to the correct class
  • Full inheritance walk β€” shows methods and properties from parent classes
  • Access control aware β€” PRIVATE / PROTECTED / PUBLIC scoping enforced
  • Each overload shown as a distinct entry with parameter signatures
  • Chained expressions (SELF.Order.) resolve intermediate types
  • Learn more about Navigation β†’

✏️ Code Snippets

Write code faster with 50+ smart snippets - works immediately!

πŸ“‚ Solution Management

Open any Clarion solution - just open the folder.

🧭 Smart Code Navigation

Jump to definitions, find implementations, and explore references β€” works in same file immediately, cross-file with solution.

  • Press F12 to go to definition (same file: no solution needed!)
  • Press Ctrl+F12 to go to implementation
  • Press Shift+F12 for Find All References β€” scope-aware across all project files
  • Press F2 to Rename Symbol β€” renames across the entire workspace in one step
  • Document Highlight β€” pressing on a symbol highlights all occurrences in the current file
  • Workspace Symbol Search (Ctrl+T) β€” search for any procedure, class, or label across all solution files
  • Hover for documentation β€” declaration location, class/interface context, type info
  • Chained navigation: SELF.Order.RangeList.Init β€” hover, F12, Ctrl+F12, and references resolve through CLASS, QUEUE, and GROUP type chains
  • SELF/PARENT properties: F12 on SELF.List navigates to the class member declaration
  • Typed variable members: F12/Ctrl+F12/hover on obj.Method() where obj is any typed variable
  • INTERFACE support: hover, F12, Ctrl+F12, and references for interface methods, IMPLEMENTS(), and 3-part Class.Interface.Method implementations
  • CLASS type names: F12 and Find All References work on type names in parameter and variable declarations
  • Cross-file navigation requires solution
  • Learn more about Navigation β†’

πŸ”§ Build Integration

Generate applications directly from VS Code.

🎯 Real-time Diagnostics

Catch errors as you type.

  • Unterminated structures β€” including window sub-structures (WINDOW, SHEET, TAB, OLE, MENU, etc.)
  • Missing RETURN statements
  • FILE validation (DRIVER, RECORD)
  • Learn more about Diagnostics β†’

✏️ Code Editing Tools

Productivity features to write code faster.


πŸ“¦ Installation

Requirements

  • Visual Studio Code (latest version)
  • Clarion (for build features)

Quick Install

  1. Open VS Code
  2. Press Ctrl+Shift+X
  3. Search for "Clarion Extensions"
  4. Click Install

Detailed installation instructions β†’


πŸŽ“ Learning Resources

For New Users

Feature Documentation

Reference


πŸ†• What's New

Latest: v0.9.2 (2026-04-18) β€” Navigation & Bug Fixes

πŸ”— Multi-Level Chain Navigation

variable.property.method chains now resolve all the way through. Hover, F12, and Ctrl+F12 on thisStartup.Settings.PutGlobalSetting(...) correctly walk from thisStartup β†’ its class β†’ .Settings property type β†’ the method on that type.

πŸ› Key Bug Fixes

  • PREFIX:Name reference variables (e.g. Access:IBSDataSets &DirectFM) now resolve correctly β€” hover and F12 no longer find an unrelated IBSDataSets FILE declaration
  • Hover, F12, and Ctrl+F12 are suppressed inside string literals β€” no more false results on 'ContainsSpaces'
  • Colon-stripping fallback removed from hover and F12 β€” was causing wrong matches for labelled variables

See full changelog β†’


Recent: v0.9.1 (2026-04-14) β€” Faster Install

πŸš€ Dramatically Smaller Extension

VSIX size drops from 19 MB β†’ 0.6 MB (10,849 bundled node_modules files eliminated). The extension now bundles all dependencies into two optimised files via esbuild β€” installs are much faster from the Marketplace and no functionality changes.

See full changelog β†’


Recent: v0.9.0 (2026-04-14) β€” IntelliSense & Completion

πŸ€– Dot-Triggered Member Completion

Type SELF. or MyVar. for a context-aware dropdown of all available methods and properties. Supports full inheritance chains, access control (PRIVATE/PROTECTED/PUBLIC), and shows each overload as a distinct entry with parameter signatures inline.

πŸ’‘ Signature Help for Class Methods

Typing ( after a class method now shows parameter hints for the full inheritance chain β€” works for SELF.Method(, MyVar.Method(, and ClassName.Method(.

πŸ› Bug Fixes

  • Signature help missing for SELF.Method( when class defined in same .clw file
  • Missing END now flagged as a diagnostic for WINDOW, SHEET, TAB, OLE, MENU, MENUBAR, TOOLBAR, REPORT, APPLICATION, and OPTION
  • Multiple cross-file F12, Ctrl+F12, hover, and Find All References fixes
  • Replaced deprecated vscode-test with @vscode/test-electron

No functional changes β€” safe to upgrade immediately.

See full changelog β†’


Recent: v0.8.8 (2026-04-12)

✏️ Rename Symbol (F2)

Rename any user-defined symbol across the entire workspace in one step β€” scope-aware, protects library/read-only .inc files, and validates the position before the dialog opens.

πŸ”† Document Highlight

Pressing on a symbol highlights all its occurrences in the current file.

πŸ” Workspace Symbol Search (Ctrl+T)

Search for any procedure, class, or label across all files in the solution.

See full changelog β†’


Recent: v0.8.6 (2026-01-12)

πŸš€ Cross-Project Navigation Performance

  • 50-70% faster Ctrl+F12 - CrossFileCache reduces subsequent navigations to <100ms
  • First navigation: 2-4 seconds (reads + caches file)
  • Subsequent navigations: <100ms (cache hits)

🎯 Routine Support Enhancements

  • Full namespace prefix support - DO DumpQue::SaveQState now works with hover and Ctrl+F12
  • New RoutineHoverResolver with code preview
  • Added DO_ROUTINE and ROUTINE_LABEL patterns

πŸ—οΈ Solution View Enhancements

  • Dependency-aware build order - Projects build in correct dependency order
  • Application sort toggle - Switch between Solution Order and Build Order
  • Build progress indicators - Spinning icon, build counter (e.g., "Building 2/5")
  • Batch UpperPark commands - Import/Export/Show All Differences
  • New context menu commands - Build Project, Generate + Build, Copy Path, Open in Clarion IDE
  • Generate All/Build All - Build multiple applications in dependency order

See full changelog β†’


πŸ’¬ Support & Feedback


πŸ“„ License

MIT License


πŸ™ Acknowledgments

Special thanks to:

  • fushnisoft - Original Clarion syntax highlighting
  • The Clarion community for feedback and testing

About

VS Code Extension for Clarion

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors