Zed Nim
Nim support for Zed Editor
Install / Use
npx skills add foxoman/zed-nimInstalls into whichever agent you are using.
README
Zed Nim
Nim extension for Zed Editor <img align="right" width="500" src="https://github.com/user-attachments/assets/0674bec5-0e43-4756-bc38-3cd82d91316b">
Features
- Syntax highlighting
- Code completion
- Runnable buttons
- Inlay hints
- Tasks
- Diagnostics
- Go to definition and references
- Hover
- Outline
- Code actions (restart nimsuggest) <br clear="right"/>
Install
Prerequisites
By default this extension uses nimlangserver. Alternatively you can configure it to use nimlsp (see below), though support for it is limited. Make sure to install one of the language servers.
Editor
Nim support has been officially integrated into the Zed editor through this extension. To enable it, search for "Nim" in the Zed extensions and install it.
<img width="400" alt="Extensions" src="https://github.com/user-attachments/assets/25f3ce66-ed75-4d1b-8b89-9f5b10f94834" />Dev / Manual install
Download the source and follow the instructions in the Zed documentation.
Configuration
LSP Parameters
To change settings of the nimlangserver add the following to your settings. List of options can be found in nimlangserver's description.
"lsp": {
"nim": {
"settings": {
// Add your settings here:
"timeout": 10000,
"projectMapping": [
{
"projectFile": "tests/all\\.nim",
"fileRegex": "tests/.*\\.nim"
}
],
"maxNimsuggestProcesses": 1,
"notificationVerbosity": "warning"
}
}
}
Switching LSPs
Zed allows to specify the binary to use as a language server (such as nimlsp):
"lsp": {
"nim": {
"binary": {
"path": "/your/path/to/.nimble/bin/nimlsp",
"args": []
},
...
}
}
Formatting
To use nph as a formatter, add this to your settings:
"languages": {
"Nim": {
"formatter": {
"external": {
"command": "nph",
"arguments": ["-"]
}
}
}
}
Jupyter
Zed provides support for notebooks as scripts. To use jupyternim as a kernel, add it in your settings:
"jupyter": {
"kernel_selections": {
"nim": "jupyternimspec"
}
}
Screenshots
| <img width="540" alt="Diagnostics" src="https://github.com/user-attachments/assets/f81eeb39-f530-48e3-a4e7-e6af3babe412" /> | <img width="360" alt="Inlay hints" src="https://github.com/user-attachments/assets/d21f083c-3332-4e5b-ad9a-e5f439606624" /> | |:---:|:---:| | Diagnostics | Inlay Hints |
| <img width="500" alt="Tasks" src="https://github.com/user-attachments/assets/4f802c5f-a710-4ed0-87a3-9b71795e2f85" /> | <img width="400" alt="Buttons" src="https://github.com/user-attachments/assets/b8afe1a4-8ca1-4bcd-83fa-bdb258577e01" /> | |:---:|:---:| | Tasks | Runnables |
Related Skills
gortex
1.1kHigh-performance code-intelligence engine for AI agents and IDE, supports 257 languages, multi repositories, based on graph, with access via CLI, MCP Server, and API. AI coding agents teammate - expose only needed information, cutting token usage up to 50x. 100% local.
techrogue
TechRogue – Roguelike technical quiz for engineers. Usage: /techrogue | /techrogue build | /techrogue settings
cc-switch
125.6kA cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io
cc-switch
125.6kA cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io
