No description
Find a file
Lander Van den Bulcke 97d05fbeba
chore: move from plugins.lsp to lsp
Signed-off-by: Lander Van den Bulcke <landervandenbulcke@gmail.com>
2025-09-30 13:03:32 +02:00
.docs/images feat: add toggleterm, markdown preview keymaps, lualine switch filename and navic (#23) 2024-08-20 00:03:30 +02:00
.github/workflows chore(deps): update renovatebot/github-action action to v43.0.2 (#101) 2025-07-06 21:33:24 +02:00
config chore: move from plugins.lsp to lsp 2025-09-30 13:03:32 +02:00
pkgs/puppet-editor-services fix: use ruby_3_4 for puppet lsp 2025-09-30 10:54:33 +02:00
.envrc direnv: create .envrc and load the flake (#59) 2024-11-26 09:51:05 +01:00
.gitignore patch: update gitignore and fixed issue in flake.nix (#62) 2024-11-26 10:03:36 +01:00
flake.lock chore: nix flake update 2025-09-30 10:49:48 +02:00
flake.nix feat: add puppet lsp package 2025-09-30 10:02:52 +02:00
LICENSE Initial commit 2024-04-13 00:16:30 +02:00
README.md chore: remove all copilot references 2025-09-23 08:55:20 +02:00
renovate.json5 patch: fix renovate config (#27) 2024-09-01 21:14:54 +02:00

NixVim Configuration

This repository contains my personal configuration NixVim, a Neovim configuration managed with Nix.

Neovim

How to use

You can use this flake as an input:

{
    inputs = {
        nixvim.url = "github:dc-tec/nixvim"
    };
}

You can then install the package either normally or through home-manager.

Normal:

environment.systemPackages = [
    inputs.nixvim.packages.x86_64-linux.default
];

Home-Manager

home-manager.users.<user>.home.packages = [
    inputs.nixvim.packages.x86_64-linux.default
];

Plugins

General Configuration

  • settings.nix: Contains general settings for Neovim.
  • keymaps.nix: Defines key mappings.
  • auto_cmds.nix: Sets up automatic commands.
  • file_types.nix: Configures file type specific settings.

Themes

  • default.nix: Sets the default theme.

Completion

  • cmp.nix: Configures the cmp completion framework.
  • lspkind.nix: Adds icons to lsp completion items.
  • autopairs.nix: Adds the autopairs plugin.
  • schemastore.nix: Adds the schemastore plugin for JSON and YAML schemas.

Snippets

  • luasnip.nix: Configures the LuaSnip snippet engine.

Editor Plugins and Configurations

  • neo-tree.nix: Configures the NeoTree file explorer.
  • treesitter.nix: Configures the TreeSitter syntax highlighter.
  • undotree.nix: Configures the UndoTree undo history visualizer.
  • illuminate.nix: Configures the Illuminate plugin for highlighting other uses of the current word under the cursor.
  • indent-blankline.nix: Configures the Indent Blankline plugin for displaying indentation levels.
  • todo-comments.nix: Configures the Todo Comments plugin for highlighting TODO comments.
  • navic.nix: Configures the Navic plugin, shows the current code context.

UI Plugins

  • bufferline.nix: Configures the Bufferline plugin for enhanced buffer/tab display.
  • lualine.nix: Configures the Lualine status line plugin.
  • startup.nix: Configures the startup screen.

LSP

  • lsp.nix: Configures the Neovim LSP client.
  • conform.nix: Configures the Conform plugin for automatic code formatting.
  • fidget.nix: Configures the Fidget plugin for displaying LSP diagnostics in the status line.

Git

  • lazygit.nix: Configures the LazyGit plugin for Git integration.
  • gitsigns.nix: Configures the GitSigns plugin for displaying Git diff information.

Utils

  • telescope.nix: Configures the Telescope plugin for fuzzy finding and picking.
  • whichkey.nix: Configures the WhichKey plugin for displaying key mappings.
  • extra_plugins.nix: Configures additional plugins.
  • mini.nix: Configures the Mini plugin.
  • obsidian.nix: Confiugres the Obsidian plugin, for note-taking purposes.
  • markdown-preview.nix: Configures the Markdown Preview plugin.
  • toggleterm.nix: Configures Terminal plugin.

Please refer to the individual .nix files for more detailed configuration information.

References

This configuration has taken inspiration from the following contributors.