{ "uuid": [ { "value": "73dc2ac9-5e4c-4a24-984f-e6d04998323b" } ], "langcode": [ { "value": "en" } ], "type": [ { "target_id": "daily_email", "target_type": "node_type", "target_uuid": "8bde1f2f-eef9-4f2d-ae9c-96921f8193d7" } ], "revision_timestamp": [ { "value": "2025-06-08T23:25:30+00:00" } ], "revision_uid": [ { "target_type": "user", "target_uuid": "b8966985-d4b2-42a7-a319-2e94ccfbb849" } ], "revision_log": [], "status": [ { "value": true } ], "uid": [ { "target_type": "user", "target_uuid": "b8966985-d4b2-42a7-a319-2e94ccfbb849" } ], "title": [ { "value": "Switching to NixVim" } ], "created": [ { "value": "2025-06-08T23:00:00+00:00" } ], "changed": [ { "value": "2025-06-08T23:25:30+00:00" } ], "promote": [ { "value": false } ], "sticky": [ { "value": false } ], "default_langcode": [ { "value": true } ], "revision_translation_affected": [ { "value": true } ], "path": [ { "alias": "\/daily\/2025\/06\/08\/switching-nixvim", "langcode": "en" } ], "body": [ { "value": "I've been [a full-time Neovim user][0] since July 2021.\r\n\r\nI've used Nix since September 2022, when I migrated my dotfiles from using Ansible to use Nix and Home Manager.\r\n\r\nMy Neovim configuration has gone through several iterations to what it is today.\r\n\r\nI've used Nix for a while to install plugins for Neovim, but the configuration was all written in Lua files which were placed by Home Manager into the correct directory.\r\n\r\nNow, I've switched to using a project called NixVim.\r\n\r\nIt enables configuring Neovim using the Nix language, which is converted to Lua code behind the scenes.\r\n\r\nDoing this makes my configuration files [more consistent and easier to maintain][1], and reduced the amount of code I needed for my Neovim configuration.\r\n\r\nMost of the configuration in Nix is equivalent to the options in Lua, but there are some great settings like `plugins.lsp.enable` and `plugins.cmp.enable` that make it easy to configure language servers and completion.\r\n\r\nI've also found a [great episode about this][2] on the Full Time Nix podcast that I'd recommend to find out more.\r\n\r\nIf you're interested in Nix and\/or Neovim, [give NixVim a look][3].\r\n\r\n[0]: \/blog\/going-full-vim\r\n[1]: \/daily\/2024\/11\/21\/one-configuration-language-to-rule-them-all\r\n[2]: https:\/\/fulltimenix.com\/episodes\/contributing-to-nixpkgs-nixvim-with-gaetan-lepage\r\n[3]: https:\/\/github.com\/nix-community\/nixvim", "format": "markdown", "processed": "

I've been a full-time Neovim user<\/a> since July 2021.<\/p>\n

I've used Nix since September 2022, when I migrated my dotfiles from using Ansible to use Nix and Home Manager.<\/p>\n

My Neovim configuration has gone through several iterations to what it is today.<\/p>\n

I've used Nix for a while to install plugins for Neovim, but the configuration was all written in Lua files which were placed by Home Manager into the correct directory.<\/p>\n

Now, I've switched to using a project called NixVim.<\/p>\n

It enables configuring Neovim using the Nix language, which is converted to Lua code behind the scenes.<\/p>\n

Doing this makes my configuration files more consistent and easier to maintain<\/a>, and reduced the amount of code I needed for my Neovim configuration.<\/p>\n

Most of the configuration in Nix is equivalent to the options in Lua, but there are some great settings like plugins.lsp.enable<\/code> and plugins.cmp.enable<\/code> that make it easy to configure language servers and completion.<\/p>\n

I've also found a great episode about this<\/a> on the Full Time Nix podcast that I'd recommend to find out more.<\/p>\n

If you're interested in Nix and\/or Neovim, give NixVim a look<\/a>.<\/p>\n", "summary": "" } ] }