Skip to content
Provides SFZ format support for Visual Studio Code
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
images
snippets
syntaxes
themes
CHANGELOG.md
LICENSE.txt
README.md
language-configuration.json
package.json

README.md

vscode-sfz README

Provides SFZ format support for Visual Studio Code.

Screenshot

Features

  1. Syntax highlighting for SFZ headers, opcodes, and settings
  2. A theme ("Dark+ for SFZ") based on Dark+ for coloring SFZ-specific features
  3. Parameter validation for most documented opcodes
  4. Some snippets for creating and editing SFZ files

Editing

  • Syntax highlighting and parameter validation are handled by a set of TextMate Language Grammars found in the syntaxes/sfz.tmLanguage.json file.
    • Opcode token definitions are organized by SFZ version (v1, v2, ARIA) and category (e.g. Sound Source or Region Logic). To disable a group of patterns (e.g. ARIA-specific instrument setting opcodes), delete the corresponding #include line at the top of the tmLanguage file.
    • Parameter validations are organized by type (float, int, string) and range (for example, validation of floats between 0 and 100 is in the "float_0-100" object).
  • Color assignments can be changed in the themes/sfz.theme.json file. For a guide, I used Simon Cann's SFZTools for UltraEdit. Tokens defined specifically for this theme are at the top of the file.
  • Snippets can be changed in the snippets/sfz.json file.

Resources

Known Issues

  • Many modulation parameters are only evaluated as to whether they are numbers, rather than against valid ranges.
  • Floats in scientific notation are not treated as valid.
  • The effects "type" opcode is not validated as I can't find any documentation on it.
  • #define substitutions are currently highlighted as invalid.

Release Notes

0.1.0 2019-05-06

  • Initial version.
You can’t perform that action at this time.