Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>uflsNew to Visual Studio Code? Get it now.
ufls

ufls

efronlicht

|
1 install
| (0) | Free
Diagnostics and semantic highlighting for .uf files.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

uf ufls

Language server and diagnostics for the uf command-line configuration language. See gitlab.com/efronlicht/uf for more details.

Installation Prereqs

The extension bootstraps uf ufls locally when a .uf file opens. You need:

  • Git (usually already installed)
  • Go 1.27 or newer (go.dev/doc/install)
  • Make
  • Bash

macOS

Install the Command Line Tools:

xcode-select --install

Or use Homebrew:

brew install go make

Debian / Ubuntu

sudo apt update
sudo apt install git build-essential make bash ca-certificates golang-go

If your distribution has Go older than 1.27, install the latest from go.dev/doc/install.

Alpine

apk add git go make bash ca-certificates

Windows

Use Git Bash, WSL, or MSYS2. Install Git, Go, and Make in that environment, then restart VS Code so it inherits the updated PATH.

Testing your installation

After installing the prereqs, confirm each tool is available:

git --version          # git version 2.x or later
go version             # go version 1.27 or later
make --version         # GNU Make 4.x or later
bash --version         # GNU bash 5.x or later

Open or create a .uf file in VS Code. The extension will clone the uf repository and run make init in the background. Check the ufls output channel (View → Output → ufls) to confirm:

bootstrap: cloning uf repository...
bootstrap: running make init...
bootstrap: ufls ready

Development

Build and package the extension from the repository root:

vscode-ufls/package.sh --force

Install locally for testing:

make vscode

The version increments automatically on each build (0.1.0 → 0.1.1 → ...).

Profiling

Profiling is off by default. Open the Command Palette with ⇧⌘P on macOS or Ctrl+Shift+P on Windows/Linux, then use these commands:

  • ufls: Start Profiling starts the local-only pprof HTTP server and restarts ufls.
  • ufls: Stop Profiling stops the pprof server and restarts ufls.
  • ufls: CPU Profile captures a 30-second CPU profile.
  • ufls: Heap Profile captures a heap profile.
  • ufls: Goroutine Profile captures a goroutine profile.

The three profile commands prompt for a destination before capturing. The default filename is ufls_TIMESTAMP.kind.pprof, for example ufls_2026-09-19T15-30-00.000Z.cpu.pprof.

Start profiling

Run ufls: Start Profiling, then capture a profile with one of the three profile commands, or open http://127.0.0.1:6060/debug/pprof/ in a browser.

Stop profiling

Run ufls: Stop Profiling from the Command Palette. The extension restarts ufls without the profiling listener.

Change the profiling address

The default address is 127.0.0.1:6060. To use another address, set ufls.profilingAddress in VS Code settings:

{
	"ufls.profilingAddress": "127.0.0.1:6061"
}

Keep the address on loopback unless remote access is deliberate.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft