# Visual Studio Code extension for SPIR-V disassembly files

This directory holds a Visual Studio Code language server extension for SPIR-V assembly files (`.spvasm`)

The extension supports:
* Syntax highlighting
* Jump to definition
* Find all references
* Symbol renaming
* Operand hover information
* Formatting

## Dependencies

In order to build and install the Visual Studio Code language server extension, you will need to install and have on your `PATH` the following dependencies:
* [`npm`](https://www.npmjs.com/)
* [`golang 1.16+`](https://golang.org/)

## Installing (macOS / Linux)

Run `install.sh`

## Installing (Windows)

Run `install.bat`
