Reed Language Extension for Visual Studio Code (reedpl-vscode)
Rich language support for the Reed Programming Language in Visual Studio Code.
Features
- Syntax Highlighting: Comprehensive TextMate grammar covering keywords, static type annotations, numbers, strings,
{expression} interpolation, standard libraries, and comments (! single-line and /* ... */ multi-line).
- Language Server Protocol (LSP): Powered directly by the native Reed compiler (
reed lsp):
- Diagnostics on type/save: Real-time syntax errors and type-checking diagnostics directly in the Problems panel and inline in the editor.
- Autocomplete & IntelliSense: Context-aware member completions (e.g.
user. displays methods and fields of User), keywords, built-in types, and standard library modules (database, csv, dataframe, tensor, statistics, algebra, crypto, regex, datetime, encoding, net, http, reui).
- Hover Tooltips: Rich markdown hover tooltips showing static types, symbol signatures, and documentation.
- Go to Definition: Jump directly to declarations (
F12).
- Document Symbols & Outline: View all classes, functions, methods, and variables in the Breadcrumbs and Outline view (
Ctrl+Shift+O).
- Formatting: Integrated document formatting (
Shift+Alt+F) with 4-space indentation, consistent operator spacing, and brace alignment.
Requirements
The extension communicates with the native Reed compiler executable (reed.exe). Ensure reed is installed in your system PATH, or configure its exact path in settings.
Extension Settings
This extension contributes the following settings:
reed.lsp.enable: Enable or disable the Reed Language Server (default: true).
reed.lsp.path: Custom path to the Reed compiler executable (default: reed).
reed.trace.server: Tracing level for LSP communication (off, messages, verbose).
Commands
Reed: Restart Language Server: Restarts the native reed lsp background process.
Reed: Format Document: Formats the active .reed document using the native Reed formatter.
Development & Testing
- Open
reedpl-vscode in VS Code.
- Press
F5 to open an Extension Development Host window.
- Open any
.reed file (e.g., in examples/).
| |