Fuzion extension for Visual Studio Code
This is a Visual Studio Code extension to support development in the Fuzion Programming Language.
Install (Java 21 required)
Requirements
make , node , npm , javac
- install example:
sudo apt-get install make openjdk-21-jdk nodejs npm
Windows (additional requirements)
- install wsl (Windows Subsytem for Linux)
- in wsl:
sudo apt-get install openjdk-21-jdk nodejs npm
- set vscode-setting: "terminal.integrated.defaultProfile.windows": "Ubuntu-20.04 (WSL)"
- NOTE: the following is only neeeded when debugging on windows
- OR when you want to run
make run_tests with 'windows-style' paths.
- install https://www.msys2.org/
- in msys2_shell install make:
pacman -S make
- install OpenJDK 21 or higher for Windows.
Develop
git submodule update --init --recursive
npm i
- start debugging in vscode
- (optional) attach to java debugger at port 8000
Build
make build-vsix which should produce an artifact like fuzion-lang-[version].vsix
Distribute
make publish_marketplace_visualstudio
make publish_open_vsx
Settings
- fuzion.java.modules
- list of java modules the fuzion language server should use
- example: ["java.base"]
Features
- Syntax Highlighting for
.fz files
- Language Server Client
Syntax Highlighting (via Semantic Tokens)

Definition

Completion

Hover

References

Diagnostics

Renaming

Evaluation

Syntax Tree

Outline

Signature Help

Call Graph

Known Windows (wsl) problems/workaround
Problem: tar EPERM: operation not permitted, futime
Workaround: sudo umount /mnt/c && sudo mount -t drvfs C: /mnt/c -o metadata,uid=1000,gid=1000,umask=22,fmask=111
| |