No description
Find a file
Roel de Cort f44000e518
patch: mix fixes (#33)
- During build time multiple warnings were shown about the deprecation
of certain options. These have been moved to their new places.
- Disable the CMP Ghost Text option because it was driving me nuts.
2024-09-11 20:56:19 +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 v40.2.7 (#29) 2024-09-08 23:15:08 +02:00
config patch: mix fixes (#33) 2024-09-11 20:56:19 +02:00
flake.lock deps: update flake.lock (#31) 2024-09-09 22:29:08 +02:00
flake.nix enable jsonls, helmls and add ansible-vim pkg (#5) 2024-06-11 15:51:54 +02:00
LICENSE Initial commit 2024-04-13 00:16:30 +02:00
README.md feat: add schemastore (#26) 2024-09-01 02:05:10 +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.
  • 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.

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.
  • copilot-chat.nix: Configures the Copilot Chat plugin for interacting with GitHub Copilot.
  • 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.