Skip to content

msarson/Clarion-Extension

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,371 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!

✏️ 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
  • 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.

✏️ 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.8.7 (2026-03-15)

🔍 Find All References (Shift+F12)

Full scope-aware Find All References — SELF/PARENT members, typed variables, chained chains, MAP/MODULE procedures, structure fields, INTERFACE methods, IMPLEMENTS(), CLASS type names, and overload filtering.

🔌 Clarion INTERFACE Support

Complete language support for interfaces — hover, F12, Ctrl+F12, and Find All References for interface methods, IMPLEMENTS() declarations, and 3-part Class.Interface.Method implementations.

🎨 Hover Quality Overhaul

  • Clean class type cards (ClassName — CLASS, TYPE · 📦 Defined in File at line N)
  • 🔷 Class property of ClassName and 🔌 Interface method of InterfaceName labels
  • F12/Ctrl+F12 hints suppressed when already at declaration/implementation
  • Implementation body previews removed (location only, matching TypeScript/C# style)

🔗 Deep Chained Navigation

Hover, F12, Ctrl+F12, and references for any depth of SELF.A.B.C chains including CLASS, QUEUE, and GROUP intermediate types.

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

🐛 Navigation & Hover Fixes

  • FUNCTION declarations now work with Ctrl+F12 (cross-project)
  • Procedures without parameters show correct hover info
  • Methods named like keywords (e.g., MESSAGE) show method info instead of keyword help

See full changelog →

Recent: v0.8.5 (2026-01-09)

🔧 Folding Provider Fix

Fixed critical issues with code folding for window definitions:

  • APPLICATION structures now fold correctly
  • Nested MENU structures fold properly at any indentation level
  • Removed arbitrary 50-column limit for structure recognition

Impact: Complex window/application definitions with nested menus now have proper code folding support.

Recent: v0.8.4 (2026-01-09)

🎨 Template Language Support

Dedicated syntax highlighting for .tpl and .tpw files with 100+ template keywords.

⚡ Performance Boost

50-60% faster token processing with optimized caching and parent relationship indexing.

🎯 Scope-Aware Navigation

F12 now correctly prioritizes local variables over globals with the same name.

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

Stars

Watchers

Forks

Packages

 
 
 

Contributors