30 lines
1.4 KiB
Markdown
30 lines
1.4 KiB
Markdown
---
|
|
date: 2025-06-08
|
|
title: Switching to NixVim
|
|
permalink: /daily/2025/06/08/switching-nixvim
|
|
---
|
|
|
|
I've been [a full-time Neovim user][0] since July 2021.
|
|
|
|
I've used Nix since September 2022, when I migrated my dotfiles from using Ansible to use Nix and Home Manager.
|
|
|
|
My Neovim configuration has gone through several iterations to what it is today.
|
|
|
|
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.
|
|
|
|
Now, I've switched to using a project called NixVim.
|
|
|
|
It enables configuring Neovim using the Nix language, which is converted to Lua code behind the scenes.
|
|
|
|
Doing this makes my configuration files [more consistent and easier to maintain][1], and reduced the amount of code I needed for my Neovim configuration.
|
|
|
|
Most 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.
|
|
|
|
I've also found a [great episode about this][2] on the Full Time Nix podcast that I'd recommend to find out more.
|
|
|
|
If you're interested in Nix and/or Neovim, [give NixVim a look][3].
|
|
|
|
[0]: /blog/going-full-vim
|
|
[1]: /daily/2024/11/21/one-configuration-language-to-rule-them-all
|
|
[2]: https://fulltimenix.com/episodes/contributing-to-nixpkgs-nixvim-with-gaetan-lepage
|
|
[3]: https://github.com/nix-community/nixvim
|