Tiko for VS CodeLanguage support for tiko, the FreeBASIC-compatible language: diagnostics, completion, hover, go to definition, find references, rename, signature help, semantic colouring, inlay hints, formatting and quick fixes. All of it comes from tiko-lsp, a
language server written in tiko. The server is included: install the
extension, open a
Getting started
Win32, runtime and
|
| Setting | Default | What it does |
|---|---|---|
tiko.toolchainPath |
"" |
The tiko-lang folder you unpacked. Leave it empty to have it found automatically. Tiko: Locate Toolchain… sets it. |
tiko.includePaths |
[] |
Override: the toolchain's inc folders, for an unusual layout. |
tiko.packagePaths |
[] |
Where #import packages are found, if not in the pkg folder beside an include path. |
tiko.compilerPath |
"" |
A tiko compiler the server may ask about each folder's tiko.toml (tiko metadata), so imports resolve exactly as the compiler resolves them. Never run for diagnostics. Empty: the compiler in the toolchain folder, else a tiko on the PATH. |
tiko.build.arguments |
[] |
Compiler options for Build and Run, such as -g or -exx. |
tiko.run.arguments |
[] |
Arguments Tiko: Run passes to the program. |
tiko.server.path |
"" |
Use a different tiko-lsp executable instead of the included one. |
tiko.server.arguments |
["--stdio"] |
Server arguments. Add "--log-level", "debug", "--log-file", "C:/temp/tiko-lsp.log" to see what the server is doing. |
tiko.trace.server |
"off" |
Log the LSP traffic in the Tiko Language Server output channel. |
Tiko: Locate Toolchain… chooses the toolchain folder. Tiko: Restart Language Server restarts the server by hand.
Which server runs
In order:
tiko.server.path, if set;- the server included with the extension;
tiko-lspon yourPATH;bin/tiko-lsp(.exe)inside a workspace folder.
The output channel's first line names the binary and where it was found. If none is found (on a platform the extension has no build for), the extension says so and offers to open the setting.
Workspace trust
The extension does not run in Restricted Mode, because starting the server means running an executable.
Colour
Before the server is up, colour comes from a TextMate grammar. Once it is running, the server's semantic tokens refine it.
Building from source
The extension is plain JavaScript (extension.js), so there is no compile step.
From editors/vscode in the tiko-lsp repository:
npm install
npm run package
code --install-extension tiko.vsix
That development package includes no server. It finds one through
tiko.server.path, the PATH, or bin/ in the workspace. The platform packages
that are published are built by release/vscode/package.sh.
Licence
MIT. The included server's third-party notices are in
server/THIRD-PARTY-NOTICES.txt inside the installed extension.