aboutsummaryrefslogtreecommitdiff
path: root/extension.json
diff options
context:
space:
mode:
authorDavid Czihak <git@dcz.at>2026-05-07 14:33:19 +0200
committerDavid Czihak <git@dcz.at>2026-05-07 14:33:19 +0200
commitddf2de739068b5ff0866ccb1d067f3cb53a4fc55 (patch)
tree1a77efe9d73a6172be3c37d29b321eadd4efe379 /extension.json
Initial commitv0.1.7
Diffstat (limited to 'extension.json')
-rw-r--r--extension.json351
1 files changed, 351 insertions, 0 deletions
diff --git a/extension.json b/extension.json
new file mode 100644
index 0000000..f9e76e9
--- /dev/null
+++ b/extension.json
@@ -0,0 +1,351 @@
+{
+ "identifier": "at.dcz.nova-zig",
+ "name": "Zig",
+ "organization": "David Czihak",
+ "description": "Zig language support – ZLS, LLDB, Tree-Sitter grammar",
+ "version": "0.1.7",
+ "license": "BSD 2-Clause License",
+ "categories": ["languages", "completions", "formatters", "tasks", "issues"],
+ "keywords": ["zig", "zon", "zls"],
+ "repository": "https://git.dcz.at/Zig.novaextension/",
+ "bugs": { "email": "bugs@dcz.at" },
+ "min_runtime": "10",
+ "main": "main.js",
+ "activationEvents": [
+ "onLanguage:zig",
+ "onWorkspaceContains:*.zig",
+ "onWorkspaceContains:build.zig",
+ "onWorkspaceContains:build.zig.zon"
+ ],
+ "entitlements": {
+ "process": true,
+ "filesystem": "readonly"
+ },
+ "debugAdapters": {
+ "zig-lldb-dap": {
+ "name": "Zig (LLDB DAP)",
+ "image": "zig-debug"
+ }
+ },
+ "breakpoints": [
+ {
+ "syntax": "zig"
+ }
+ ],
+ "config": [
+ {
+ "type": "section",
+ "title": "Tooling",
+ "description": "Paths to the Zig toolchain and language server. Leave blank to discover them from PATH.",
+ "children": [
+ {
+ "key": "at.dcz.nova-zig.toolchain.zig-path",
+ "title": "Zig Executable",
+ "type": "path",
+ "placeholder": "zig",
+ "description": "Absolute path to the Zig executable."
+ },
+ {
+ "key": "at.dcz.nova-zig.toolchain.zls-path",
+ "title": "ZLS Executable",
+ "type": "path",
+ "placeholder": "zls",
+ "description": "Absolute path to the ZLS language server executable."
+ },
+ {
+ "key": "at.dcz.nova-zig.toolchain.lldb-dap-path",
+ "title": "LLDB DAP Executable",
+ "type": "path",
+ "placeholder": "lldb-dap",
+ "description": "Absolute path to the lldb-dap executable. Leave blank to discover it via xcrun or PATH."
+ }
+ ]
+ },
+ {
+ "type": "section",
+ "title": "Language Server",
+ "description": "Controls for the ZLS integration.",
+ "children": [
+ {
+ "key": "at.dcz.nova-zig.zls.enabled",
+ "title": "Enable ZLS",
+ "type": "boolean",
+ "default": true,
+ "description": "Enable diagnostics, completion, navigation, and other language-server features."
+ },
+ {
+ "key": "at.dcz.nova-zig.zls.build-on-save",
+ "title": "Build On Save",
+ "type": "boolean",
+ "default": false,
+ "description": "Allow ZLS to run its build/check runner on save when the workspace is a Zig project."
+ },
+ {
+ "key": "at.dcz.nova-zig.zls.debug",
+ "title": "Debug Server Messages",
+ "type": "boolean",
+ "default": false,
+ "description": "Log ZLS traffic to the Extension Console while developing the extension."
+ }
+ ]
+ }
+ ],
+ "configWorkspace": [
+ {
+ "type": "section",
+ "title": "Tooling",
+ "description": "Workspace-specific overrides for Zig and ZLS executable paths.",
+ "children": [
+ {
+ "key": "at.dcz.nova-zig.toolchain.zig-path",
+ "title": "Zig Executable",
+ "type": "path",
+ "placeholder": "zig",
+ "description": "Absolute path to the Zig executable."
+ },
+ {
+ "key": "at.dcz.nova-zig.toolchain.zls-path",
+ "title": "ZLS Executable",
+ "type": "path",
+ "placeholder": "zls",
+ "description": "Absolute path to the ZLS language server executable."
+ },
+ {
+ "key": "at.dcz.nova-zig.toolchain.lldb-dap-path",
+ "title": "LLDB DAP Executable",
+ "type": "path",
+ "placeholder": "lldb-dap",
+ "description": "Absolute path to the lldb-dap executable. Leave blank to discover it via xcrun or PATH."
+ }
+ ]
+ },
+ {
+ "type": "section",
+ "title": "Language Server",
+ "description": "Workspace-specific language server settings.",
+ "children": [
+ {
+ "key": "at.dcz.nova-zig.zls.enabled",
+ "title": "Enable ZLS",
+ "type": "boolean",
+ "description": "Enable diagnostics, completion, navigation, and other language-server features."
+ },
+ {
+ "key": "at.dcz.nova-zig.zls.build-on-save",
+ "title": "Build On Save",
+ "type": "boolean",
+ "description": "Allow ZLS to run its build/check runner on save when the workspace is a Zig project."
+ },
+ {
+ "key": "at.dcz.nova-zig.zls.debug",
+ "title": "Debug Server Messages",
+ "type": "boolean",
+ "description": "Log ZLS traffic to the Extension Console while developing the extension."
+ }
+ ]
+ }
+ ],
+ "issueMatchers": {
+ "zig.compiler": {
+ "pattern": [
+ {
+ "regexp": "^(.+?):(\\d+):(\\d+):\\s*(error|warning):\\s*(.+)$",
+ "file": 1,
+ "line": 2,
+ "column": 3,
+ "severity": 4,
+ "message": 5
+ }
+ ]
+ }
+ },
+ "taskTemplates": {
+ "zigBuildRun": {
+ "name": "Zig Package",
+ "description": "Build and run a Zig package from one Nova task configuration.",
+ "tasks": {
+ "build": {
+ "resolve": "at.dcz.nova-zig.tasks",
+ "data": {
+ "type": "build"
+ }
+ },
+ "run": {
+ "resolve": "at.dcz.nova-zig.tasks",
+ "data": {
+ "type": "build-run"
+ }
+ },
+ "clean": {
+ "resolve": "at.dcz.nova-zig.tasks",
+ "data": {
+ "type": "clean"
+ }
+ }
+ },
+ "config": [
+ {
+ "key": "cwd",
+ "title": "Working Directory",
+ "type": "path",
+ "allowFiles": false,
+ "allowFolders": true,
+ "relative": true,
+ "placeholder": "Workspace Root"
+ },
+ {
+ "key": "runStep",
+ "title": "Run Step",
+ "type": "string",
+ "default": "run",
+ "placeholder": "run",
+ "description": "The `zig build` step to execute for the Run action."
+ },
+ {
+ "key": "buildArgs",
+ "title": "Build Arguments",
+ "type": "stringArray",
+ "description": "Additional arguments appended after `zig build` for both Build and Run."
+ },
+ {
+ "key": "runArgs",
+ "title": "Program Arguments",
+ "type": "stringArray",
+ "description": "Arguments passed after `--` to the built program."
+ }
+ ]
+ },
+ "zigBuildRunTerminal": {
+ "name": "Zig Package (macOS Terminal)",
+ "description": "Build a Zig package and run it in the external macOS Terminal app.",
+ "tasks": {
+ "build": {
+ "resolve": "at.dcz.nova-zig.tasks",
+ "data": {
+ "type": "build"
+ }
+ },
+ "run": {
+ "resolve": "at.dcz.nova-zig.tasks",
+ "data": {
+ "type": "build-run-terminal"
+ }
+ },
+ "clean": {
+ "resolve": "at.dcz.nova-zig.tasks",
+ "data": {
+ "type": "clean"
+ }
+ }
+ },
+ "config": [
+ {
+ "key": "cwd",
+ "title": "Working Directory",
+ "type": "path",
+ "allowFiles": false,
+ "allowFolders": true,
+ "relative": true,
+ "placeholder": "Workspace Root"
+ },
+ {
+ "key": "runStep",
+ "title": "Run Step",
+ "type": "string",
+ "default": "run",
+ "placeholder": "run",
+ "description": "The `zig build` step to execute for the Run action."
+ },
+ {
+ "key": "buildArgs",
+ "title": "Build Arguments",
+ "type": "stringArray",
+ "description": "Additional arguments appended after `zig build` for both Build and Run."
+ },
+ {
+ "key": "runArgs",
+ "title": "Program Arguments",
+ "type": "stringArray",
+ "description": "Arguments passed after `--` to the built program."
+ }
+ ]
+ },
+ "zigDebug": {
+ "name": "Zig Debug",
+ "description": "Build a Zig package in Debug mode and launch it under lldb-dap.",
+ "tasks": {
+ "build": {
+ "resolve": "at.dcz.nova-zig.tasks",
+ "data": {
+ "type": "build-debug"
+ }
+ },
+ "run": {
+ "resolve": "at.dcz.nova-zig.tasks",
+ "buildBeforeRunning": true,
+ "data": {
+ "type": "debug"
+ }
+ },
+ "clean": {
+ "resolve": "at.dcz.nova-zig.tasks",
+ "data": {
+ "type": "clean"
+ }
+ }
+ },
+ "config": [
+ {
+ "key": "cwd",
+ "title": "Working Directory",
+ "type": "path",
+ "allowFiles": false,
+ "allowFolders": true,
+ "relative": true,
+ "placeholder": "Workspace Root"
+ },
+ {
+ "key": "programPath",
+ "title": "Program",
+ "type": "path",
+ "allowFiles": true,
+ "allowFolders": false,
+ "relative": true,
+ "placeholder": "zig-out/bin/app",
+ "description": "Path to the executable to debug. Relative paths are resolved against the working directory."
+ },
+ {
+ "key": "buildArgs",
+ "title": "Build Arguments",
+ "type": "stringArray",
+ "description": "Additional arguments appended after `zig build -Doptimize=Debug`."
+ },
+ {
+ "key": "runArgs",
+ "title": "Program Arguments",
+ "type": "stringArray",
+ "description": "Arguments passed to the debugged program."
+ },
+ {
+ "key": "console",
+ "title": "Console",
+ "type": "enum",
+ "default": "internalConsole",
+ "values": [
+ ["internalConsole", "Internal Console"],
+ ["integratedTerminal", "Integrated Terminal"],
+ ["externalTerminal", "External Terminal"]
+ ],
+ "description": "Where the debugged program should run."
+ },
+ {
+ "key": "stopOnEntry",
+ "title": "Stop On Entry",
+ "type": "boolean",
+ "default": false,
+ "description": "Pause immediately when the program starts."
+ }
+ ]
+ }
+ }
+}