登录
Nix IDE
分类:工具软件 访问:10 下载量:0

软件介绍

更新时间:2025-06-19

Nix IDE ✨??

Nix IDE是为Visual Studio Code提供Nix语言支持的扩展工具,旨在帮助开发者更高效地编写和管理Nix代码。

快速入门 ?

  1. 安装扩展并打开Nix文件:安装后,打开任意Nix文件即可使用。
  2. 语法高亮:默认支持语法高亮,包括Markdown文件中的Nix代码块。
  3. 自动格式化:如果您的$PATH中包含nixfmt或nixpkgs-fmt,将自动启用格式化功能。您还可以通过设置nix.formatterPath来指定自定义格式化工具。
  4. 语法错误检查:使用nix-instantiate进行语法错误的检测和提示。
  5. 语言服务器支持:通过配置语言服务器,可以启用完整的语言支持功能。详细信息请参阅LSP插件支持部分。
  6. 代码片段:提供条件表达式、let/with表达式和递归集合等常用代码片段。
  7. 路径补全:通过Path Intellisense扩展支持路径补全功能。

设置 ⚙️

LSP插件支持

通过配置语言服务器,可以启用Nix的完整语言支持。以下是使用nil和nixd的示例配置:

{
  "nix.enableLanguageServer": true,
  "nix.serverPath": "nil", // 或 "nixd"
  "nix.serverSettings": {
    "nil": {
      "formatting": {
        "command": ["nixfmt"],
      },
    },
    "nixd": {
      "formatting": {
        "command": ["nixfmt"],
      },
      "options": {
        "nixos": {
          "expr": "(builtins.getFlake \"/absolute/path/to/flake\").nixosConfigurations..options",
        },
        "home-manager": {
          "expr": "(builtins.getFlake \"/absolute/path/to/flake\").homeConfigurations..options",
        },
        "nix-darwin": {
          "expr": "(builtins.getFlake \"${workspaceFolder}/path/to/flake\").darwinConfigurations..options",
        },
      },
    }
  }
}

自定义格式化工具

可以通过设置nix.formatterPath来指定自定义格式化工具,该工具应能从stdin读取文件内容并通过stdout返回格式化后的文本。如果使用了LSP服务器,则此配置将被忽略。

{
    "nix.formatterPath": "nixfmt" // 或 "nixpkgs-fmt" 或 "alejandra" 或 "nix3-fmt" 或传递完整的参数列表如 `["treefmt", "--stdin", "{file}"]`
}

贡献 ?

我们欢迎对该扩展的贡献。请从开放的问题或功能请求开始。更多信息请参阅CONTRIBUTING.md。

致谢

特别感谢:

  • @wmertens 编写了语法。
  • vscode-fish扩展,该扩展被修改以支持Nix语言。

本站所有资源都是由网友投稿发布,或转载各大下载站, 请自行检测软件的完整性!

本站所有资源仅供学习与参考,请勿用于商业用途,否则 产生的一切后果将由您自己承担!

如有侵权请联系我们删除下架,联系方式:study_golang@163.com

最新教程

查看更多
  • Golang云原生架构师课程
    Golang云原生架构师课程
    Go是一门并发支持、垃圾回收的编译型系统编程语言;本课程转载自哔哩哔哩:https://www.bilibili.com/video/BV1Mh411M7A
  • MySQL数据管理之备份恢复案例解析视频教程
    MySQL数据管理之备份恢复案例解析视频教程
    《MySQL数据管理之备份恢复案例解析视频教程》MySQL是一个开放源码的小型关联式数据库管理系统,目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
  • MySQL索引优化解决方案
    MySQL索引优化解决方案
    本套课程是根据MySQL索引的设计理念与数据结构、索引使用场景、索引分类、索引运用场景、索引性能分析、查询优化、MySQL索引的慢查询等组成,主要讲述了MySQL索引优化的解决方案,非常适合有MySQL使用基础或者有一定工作经验的同学。课程讲解了解决大数量查询慢的问题、如何编写一个高效的SQL、查询语句应该如何优化、索引的实现原理是什么、索引又应该如何优化...等诸多SQL索引优化的难点和面试点。
  • 极客学院Docker视频教程
    极客学院Docker视频教程
    Docker是PaaS提供商dotCloud开源的一个基于LXC的高级容器引擎,源代码托管在Github上,基于go语言并遵从Apache2.0协议开源。Docker自2013年以来非常火热,无论是从github上的代码活跃度,还是各大厂商的支持,都使Docker成为了时下最受关注的技术,甚至微软都声称在下一代WindowsServer中集成对Docker的支持。所以我们收集了《极客学院Docke
  • Golang进阶实战编程
    Golang进阶实战编程
    本课程是在《Go语言基础视频》基础之上录制的,是Go语言基础的后半部分。包括包的管理,IO操作,Go语言最大的亮点:高并发,goroutine,channel,反射等。本视频主要为了帮助Go语言的初学者,从零到一的快速入门。学完本套课程,可以学会如果通过包管理Go项目,并发模型,以及并发实现,channel通道如何传递数据,反射等等。
  • JavaScript极速入门
    JavaScript极速入门
    本套课程将帮助大家迅速掌握JavaScript这门高端的、动态的、弱类型编程语言。知识点简单明了,让你学习0压力,适合新手观看学习......