• Sign In



  • Categories

    Extension Details



    Readme

    Liquidsoap for Nova

    Liquidsoap language support for Panic's Nova editor, ported from the official vscode-liquidsoap extension maintained by Savonet.

    This extension is not maintained by Savonet.

    Features

    • Syntax highlighting
    • Autocomplete (functions, keywords, types, encoders, preprocessor directives)
    • Syntax validation (unclosed blocks, mismatched brackets, unclosed strings)
    • Code formatting via prettier + liquidsoap-prettier (Opt+Shift+F or on save)
    • Automatic indentation
    • Code folding

    Installation

    The Nova way

    Install this from the Extension library.

    The easy way

    Double-click the extension.

    The hard way

    Symlink the extension bundle into Nova's extensions directory:

    ln -s /path/to/Liquidsoap.novaextension \
      ~/Library/Application\ Support/Nova/Extensions/Liquidsoap.novaextension
    

    Restart Nova. Any .liq file will activate the extension.

    Formatting requires a working npx (Node.js). The extension will fetch the latest prettier and liquidsoap-prettier automatically the first time you format — no manual npm install is required. Subsequent formats use npx's local cache.

    If you'd rather use your own prettier install (e.g. to pin a specific version, or to work offline), set Settings → Extensions → Liquidsoap → Path to prettier executable to your prettier binary and make sure liquidsoap-prettier is resolvable from your workspace.

    Issues

    You're welcome to submit any issues you may find in this product.

    License

    MIT

    Release Notes

    02 MAY 2026

    Index top-level name = … assignments as variable symbols, so they show up in the dictionary / completion suggestions alongside def and let bindings.
    Also index top-level name := … ref assignments, both in the syntax symbol provider and the cross-file extractor.
    Fix %-prefixed completions (e.g. %wav, %mp3) doubling the sigil to %%wav when accepted — the completion provider now matches the leading % so the inserted text overwrites it instead of stacking on top.

    NOTE: 0.1.4 skipped due to Nova being helpful with the version numbers.

    30 APRIL 2026

    Port grammar coverage from the upstream VSCode extension: time predicates (1h30m), doc tags inside comments (@param, @category, @argsof, @flag, @docof), string interpolation #{...}, dereference operator !ident, dotted arithmetic +. -. *. /., let pattern bindings, let json.parse / yaml.parse, and for-loop variable capture.
    Add cross-file completions: scan sibling .liq files in the same directory and suggest their top-level def/let/assignment names. Cached per-file by mtime. Toggle via the new "liquidsoap.crossFileCompletions" setting (default enabled, with a per-workspace override).

    08 APRIL 2026

    Fix a bug that led to some expressions being interpreted as other types.

    04 APRIL 2026

    Initial commit.