summaryrefslogtreecommitdiff
path: root/hm/editors/nixvim
diff options
context:
space:
mode:
Diffstat (limited to 'hm/editors/nixvim')
-rw-r--r--hm/editors/nixvim/binds.nix0
-rw-r--r--hm/editors/nixvim/nixvim.nix271
2 files changed, 0 insertions, 271 deletions
diff --git a/hm/editors/nixvim/binds.nix b/hm/editors/nixvim/binds.nix
deleted file mode 100644
index e69de29..0000000
--- a/hm/editors/nixvim/binds.nix
+++ /dev/null
diff --git a/hm/editors/nixvim/nixvim.nix b/hm/editors/nixvim/nixvim.nix
deleted file mode 100644
index ea6398b..0000000
--- a/hm/editors/nixvim/nixvim.nix
+++ /dev/null
@@ -1,271 +0,0 @@
-{
- inputs,
- config,
- lib,
- pkgs,
- ...
-}:
-let
- cfg = config.hm.editors.nixvim;
-in
-{
- imports = [ inputs.nixvim.homeModules.nixvim ];
-
- options.hm.editors.nixvim.enable = lib.mkEnableOption "enables nixvim config framework";
-
- config = lib.mkIf cfg.enable {
- programs.nixvim = {
- diagnostics.virtual_text = false;
- enable = true;
- package = inputs.neovim-nightly-overlay.packages.${pkgs.system}.default;
-
- viAlias = true;
- vimAlias = true;
- defaultEditor = true;
- waylandSupport = true;
- colorschemes.gruvbox.enable = true;
-
- globals.mapleader = " ";
-
- clipboard = {
- providers.wl-copy.enable = true;
- register = "unnamedplus";
- };
-
- opts = {
- smartindent = true;
- autoindent = true;
- breakindent = true;
- number = true;
- relativenumber = true;
- termguicolors = true;
- ignorecase = true;
- smartcase = true;
- expandtab = true;
- shiftwidth = 2;
- encoding = "utf-8";
- fileencoding = "utf-8";
- undofile = true;
- swapfile = true;
- backup = false;
- autoread = true;
- cursorline = true;
- ruler = true;
- gdefault = true;
- scrolloff = 5;
- };
-
- keymaps = [
- {
- mode = [ "" ];
- key = "<F1>";
- action = "<NOP>";
- options.silent = true;
- }
- {
- mode = "n";
- key = "<leader>gs";
- action = "<cmd>Neogit<CR>";
- options.desc = "Neogit Status";
- }
- {
- mode = "n";
- key = "<leader>ff";
- action = "<cmd>Telescope find_files<CR>";
- options.desc = "Find Files";
- }
- {
- mode = "n";
- key = "gd";
- action = "<cmd>lua vim.lsp.buf.definition()<CR>";
- options.desc = "Go to Definition";
- }
- {
- mode = "n";
- key = "K";
- action = "<cmd>lua vim.lsp.buf.hover()<CR>";
- options.desc = "Hover Docs";
- }
- {
- mode = "n";
- key = "<leader>ca";
- action = "<cmd>lua vim.lsp.buf.code_action()<CR>";
- options.desc = "Code Actions";
- }
- {
- mode = "n";
- key = "<leader>rn";
- action = "<cmd>lua vim.lsp.buf.rename()<CR>";
- options.desc = "Rename Symbol";
- }
- {
- mode = "n";
- key = "<leauer>fs";
- action = "<cmd>Telescope lsp_document_symbols<CR>";
- options.desc = "Find Symbols (Functions/Variables)";
- }
- {
- mode = "n";
- key = "<leader>fg";
- action = "<cmd>Telescope live_grep<CR>";
- options.desc = "Live Grep";
- }
- {
- mode = "n";
- key = "<leader>ma";
- action = "<cmd>MCpattern<CR>";
- options.desc = "Select all matches of pattern";
- }
- {
- mode = "n";
- key = "<leader>ha";
- action = ''<cmd>lua require("harpoon.mark").add_file()<CR>'';
- options.desc = "Harpoon: Mark File";
- }
- {
- mode = "n";
- key = "<leader>hh";
- action = ''<cmd>lua require("harpoon.ui").toggle_quick_menu()<CR>'';
- options.desc = "Harpoon: Show Menu";
- }
- {
- mode = "n";
- key = "<leader>xx";
- action = "<cmd>Trouble diagnostics toggle<CR>";
- options.desc = "Toggle Trouble (Diagnostics)";
- }
- {
- mode = "n";
- key = "<leader>p";
- action = "<cmd>Telescope yank_history<CR>";
- options.desc = "Open Yank History";
- }
- ];
-
- plugins = {
- overseer.enable = true;
- # neotest.enable = true;
-
- tiny-inline-diagnostic = {
- enable = true;
- settings = {
- preset = "minimal";
- show_all_diags_on_cursorline = true;
- options = {
- multilines = {
- enabled = true;
- always_show = true;
- };
- };
- };
- };
- comment.enable = true;
- flash = {
- enable = true;
- settings = {
- search.enabled = true;
- jump.autojump = true;
- };
- };
- notify = {
- enable = true;
- settings.topDown = false;
- };
- yanky = {
- enable = true;
- settings.ring.history_length = 100;
- settings.system_clipboard.sync_with_ring = true;
- };
- lualine = {
- enable = true;
- settings = {
- options.theme = "gruvbox-material";
- sections = {
- lualine_b = [ "diagnostics" ];
- lualine_c = [ "filename" ];
- lualine_x = [ "filetype" ];
- };
- };
- };
-
- treesitter-context = {
- enable = true;
- settings = {
- indent.enable = true;
- max_lines = 2;
- trim_scope = "outer";
- };
- };
- oil.enable = true;
- nvim-autopairs.enable = true;
- neoscroll.enable = true;
- bufferline.enable = true;
- web-devicons.enable = true;
- lsp-kind.enable = true;
-
- blink-cmp = {
- enable = true;
- settings = {
- keymap = {
- preset = "default";
- "<C-space>" = [
- "show"
- "show_documentation"
- "hide"
- ];
- # "<CR>" = [
- # "accept"
- # "fallback"
- # ];
- # "<Tab>" = [
- # "select_next"
- # "fallback"
- # ];
- # "<S-Tab>" = [
- # "select_prev"
- # "fallback"
- # ];
- };
- };
- };
-
- # gitsigns.enable = true;
- which-key.enable = true;
- harpoon = {
- enable = true;
- enableTelescope = true;
- };
- toggleterm.enable = true;
- treesitter.enable = true;
- telescope = {
- enable = true;
- extensions.fzf-native.enable = true;
- };
- noice.enable = true;
- dressing.enable = true;
-
- conform-nvim = {
- enable = true;
- settings = {
- formatters_by_ft = {
- nix = [ "alejandra" ];
- };
- format_on_save = {
- lsp_fallback = true;
- timeout_ms = 500;
- };
- };
- };
-
- lsp = {
- enable = true;
- servers = {
- zls.enable = true;
- nil_ls.enable = true;
- clangd.enable = true;
- };
- };
- };
- };
- };
-}