Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

programs.zed-editor.enable

Whether to enable Zed, the high performance, multiplayer code editor from the creators of Atom and Tree-sitter.

Type: boolean

Default:

false

Example:

true

Declared by:

programs.zed-editor.enableMcpIntegration

Whether to integrate the MCP server config from programs.mcp.servers into programs.zed-editor.userSettings.context_servers.

Note: Settings defined in programs.zed-editor.userSettings.context_servers will take precedence over the generated MCP configuration.

Type: boolean

Default:

false

Declared by:

programs.zed-editor.package

The zed-editor package to use.

Type: null or package

Default:

pkgs.zed-editor

Declared by:

programs.zed-editor.defaultEditor

Whether to set zeditor -w as the default editor using the EDITOR and VISUAL environment variables.

Type: boolean

Default:

false

Declared by:

programs.zed-editor.extensions

A list of the extensions Zed should install on startup. Use the name of a repository in the extension list.

Type: list of string

Default:

[ ]

Example:

[
  "swift"
  "nix"
  "xy-zed"
]

Declared by:

programs.zed-editor.extraPackages

Extra packages available to Zed.

Type: list of package

Default:

[ ]

Example:

[ pkgs.nixd ]

Declared by:

programs.zed-editor.installRemoteServer

Whether to symlink the Zed’s remote server binary to the expected location. This allows remotely connecting to this system from a distant Zed client.

For more information, consult the “Remote Server” section in the wiki.

Type: boolean

Default:

false

Example:

true

Declared by:

programs.zed-editor.mutableUserDebug

Whether user debug configurations (debug.json) can be updated by zed.

Type: boolean

Default:

true

Example:

false

Declared by:

programs.zed-editor.mutableUserKeymaps

Whether user keymaps (keymap.json) can be updated by zed.

Type: boolean

Default:

true

Example:

false

Declared by:

programs.zed-editor.mutableUserSettings

Whether user settings (settings.json) can be updated by zed.

Type: boolean

Default:

true

Example:

false

Declared by:

programs.zed-editor.mutableUserTasks

Whether user tasks (tasks.json) can be updated by zed.

Type: boolean

Default:

true

Example:

false

Declared by:

programs.zed-editor.themes

Each theme is written to $XDG_CONFIG_HOME/zed/themes/theme-name.json where the name of each attribute is the theme-name

See https://zed.dev/docs/extensions/themes for the structure of a Zed theme

Type: attribute set of (JSON value or absolute path or strings concatenated with “\n”)

Default:

{ }

Declared by:

programs.zed-editor.userDebug

Configuration written to Zed’s debug.json.

Global debug configurations for Zed’s Debugger.

Type: JSON value

Default:

[ ]

Example:

[
  {
    adapter = "Delve";
    label = "Go (Delve)";
    mode = "debug";
    program = "$ZED_FILE";
    request = "launch";
  }
]

Declared by:

programs.zed-editor.userKeymaps

Configuration written to Zed’s keymap.json.

Type: JSON value

Default:

[ ]

Example:

[
  {
    context = "Workspace";
    bindings = {
      ctrl-shift-t = "workspace::NewTerminal";
    };
  };
]

Declared by:

programs.zed-editor.userSettings

Configuration written to Zed’s settings.json.

Type: JSON value

Default:

{ }

Example:

{
  buffer_font_size = 16;
  features = {
    copilot = false;
  };
  telemetry = {
    metrics = false;
  };
  ui_font_size = 16;
  vim_mode = false;
}

Declared by:

programs.zed-editor.userTasks

Configuration written to Zed’s tasks.json.

List of tasks that can be run from the command palette.

Type: JSON value

Default:

[ ]

Example:

[
  {
    args = [
      "fmt"
      "$ZED_WORKTREE_ROOT"
    ];
    command = "nix";
    label = "Format Code";
  }
]

Declared by: