This extension provides:
.fsslanguage registration- TextMate syntax highlighting
- LSP client wiring to
FScript.LanguageServer - Configurable inlay hints and server settings
From vscode-fscript/:
npm installThen run the extension in VS Code (F5) from this repository.
The extension depends on a .NET runtime for FScript.LanguageServer. It requests runtime acquisition through the VS Code .NET Install Tool integration (ms-dotnettools.vscode-dotnet-runtime) and falls back to dotnet from PATH when needed.
The extension is published on tag pushes only, to both:
- VS Code Marketplace
- Open VSX
Release checklist:
- Update
vscode-fscript/package.jsonversion. - Update root
CHANGELOG.md(the extension changelog points to this file). - Commit and push.
- Push tag
vX.Y.Zmatchingpackage.jsonversion.
The CI workflow validates that tag version and extension version are identical before publishing.
fscript.lsp.enabled: enable/disable LSP features.fscript.inlayHints.enabled: toggle inlay hints from the language server.fscript.server.path: optional custom path toFScript.LanguageServer.dll.fscript.server.logLevel: requested server log level (error,warn,info,debug).fscript.repl.command: shell command used to start REPL in the extension terminal. Default isauto(prefer local workspace CLI viadotnet run, then fallback tofscript).
FScript: Open REPL: opens (or reuses) anFScript REPLterminal and starts REPL.FScript: Send Selection to REPL: sends current selection to the REPL terminal, preserving single top-levelletbindings for later REPL use.FScript: Execute Current Script in REPL: sends full active.fssdocument to the REPL terminal as one atomic block.FScript: Show Language Server Output: opens language server logs.FScript: View AST: renders AST JSON from the active file.FScript: View Inferred AST: renders inferred AST JSON from the active file.
- Run command:
FScript: Show Language Server Outputto open server logs. - A status-bar item shows server lifecycle:
starting...spinner during initializationFScriptwith check mark when ready- error indicator when startup fails
The extension starts the language server with one of these strategies:
- Custom path from
fscript.server.path(if configured) - Packaged server:
server/FScript.LanguageServer.dll - Local development fallback: builds
../src/FScript.LanguageServer/FScript.LanguageServer.csprojand runsbin/Debug/net10.0/FScript.LanguageServer.dll