NASM Language Support
Language features for NASM Assembly.
This extension provides syntax highlighting and diagnostics for assembly files (
.s). Your system's
nasm executable is used to detect compile-time errors and warnings such as invalid syntax or likely incorrect code.
This extension does provide:
- Syntax highlighting & language configuration
- Code validation on save
This extension does not provide:
- Autocomplete or Intellisense
Shown above: NASM Language Support + Error Lens, Theme: Github Dark Default
While syntax highlighting can always be used, you must have a
nasm binary referenced in your
PATH environment variable to view code diagnostics.
Getting a NASM binary on Unix-like systems
Your operating system might have a
- macOS (Homebrew):
brew install nasm [^1]
- Arch Linux:
pacman -S nasm
apt-get install nasm
dnf install nasm,
yum install nasm
Downloading a NASM binary
You can also download NASM from their website. Find a link to the latest version and download the executable for your platform. Then, add it to a folder that's referenced in your PATH, such as
This extension contributes the following settings:
nasm.validate: If enabled, NASM Language Support will validate your assembly files. This is dependent on you having a
nasm executable in your
nasm.outputFormat: Changes the executable output format to assemble for. This is neccesary to provide correct errors based on your build target.
nasm.reportWarnings: If disabled, warnings will be supressed.
nasm.extraFlags: Extra flags (for example,
-w+all) that will be appended when running
nasm when validating assembly files
nasm.nasmPath: The name or path of the nasm executable (e.g.
nasm.checkOnType: If enabled, validates assembly files as you type rather than after saving.bb
You may need to add set the
nasm.nasmPath option to
/opt/homebrew/bin/nasm for the extension to work properly.