This repository contains my personal configuration NixVim, a Neovim configuration managed with Nix.
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.
environment.systemPackages = [
inputs.nixvim.packages.x86_64-linux.default
];home-manager.users.<user>.home.packages = [
inputs.nixvim.packages.x86_64-linux.default
];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.
default.nix: Sets the default theme.
cmp.nix: Configures the cmp completion framework.cmp-copilot.nix: Adds GitHub Copilot support to cmp.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.
luasnip.nix: Configures the LuaSnip snippet engine.
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.copilot-chat.nix: Configures the Copilot Chat plugin for interacting with GitHub Copilot.navic.nix: Configures the Navic plugin, shows the current code context.
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.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.
lazygit.nix: Configures the LazyGit plugin for Git integration.gitsigns.nix: Configures the GitSigns plugin for displaying Git diff information.
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.
This configuration has taken inspiration from the following contributors.