aboutsummaryrefslogtreecommitdiffstats
path: root/modules/tools/nixvim/default.nix
diff options
context:
space:
mode:
authorArpit Chakladar <54011232+arpitchakladar@users.noreply.github.com>2025-12-10 22:25:00 +0530
committerArpit Chakladar <54011232+arpitchakladar@users.noreply.github.com>2025-12-10 22:25:00 +0530
commit24f75195cab9350495422d8771aa0c30b90a235f (patch)
treeb3b25b692ea50fb0cf602c41785ace3885ba7aec /modules/tools/nixvim/default.nix
parent693695f92ba87277d170ebd8a6ac19805e457b39 (diff)
downloadhome-manager-config-24f75195cab9350495422d8771aa0c30b90a235f.tar.gz
home-manager-config-24f75195cab9350495422d8771aa0c30b90a235f.zip
Configured nixvim
Diffstat (limited to 'modules/tools/nixvim/default.nix')
-rw-r--r--modules/tools/nixvim/default.nix138
1 files changed, 137 insertions, 1 deletions
diff --git a/modules/tools/nixvim/default.nix b/modules/tools/nixvim/default.nix
index 1bde14e..bff6220 100644
--- a/modules/tools/nixvim/default.nix
+++ b/modules/tools/nixvim/default.nix
@@ -17,6 +17,17 @@ in {
{
programs.nixvim = {
enable = true;
+ keymaps = [
+ { key = "<c-h>"; action = "<c-w>h"; }
+ { key = "<c-w>"; action = "<c-w>j"; }
+ { key = "<c-k>"; action = "<c-w>k"; }
+ { key = "<c-l>"; action = "<c-w>l"; }
+ {
+ key = "<c-n>";
+ action = "<cmd>NvimTreeToggle<cr>";
+ mode = [ "n" "i" ];
+ }
+ ];
colorschemes.base16 = {
enable = true;
colorscheme = with config.scheme.withHashtag; {
@@ -42,11 +53,136 @@ in {
number = true;
relativenumber = true;
shiftwidth = 3;
+ tabstop = 3;
+ softtabstop = 3;
+ expandtab = false;
+ list = true;
+ laststatus = 3;
};
+ clipboard.providers.xclip.enable = true;
+ extraConfigLuaPre = with config.scheme.withHashtag; ''
+ vim.opt.fillchars:append({ eob = " " })
+ vim.opt.listchars = { tab = "| ", trail = "_", lead = "_" }
+ vim.api.nvim_set_hl(0, "WinSeparator", {
+ fg = "${base01}",
+ bg = "${base00}",
+ })
+ '';
plugins = {
- lightline = {
+ comment = {
enable = true;
};
+ lualine = {
+ enable = true;
+ settings = {
+ options = {
+ theme = with config.scheme.withHashtag; {
+ normal = {
+ a = { fg = base00; bg = base0D; gui = "bold"; };
+ b = { fg = base05; bg = base01; };
+ c = { fg = base05; bg = base00; };
+ };
+ insert = {
+ a = { fg = base00; bg = base0B; gui = "bold"; };
+ b = { fg = base05; bg = base01; };
+ c = { fg = base05; bg = base00; };
+ };
+ visual = {
+ a = { fg = base00; bg = base0A; gui = "bold"; };
+ b = { fg = base05; bg = base01; };
+ c = { fg = base05; bg = base00; };
+ };
+ replace = {
+ a = { fg = base00; bg = base08; gui = "bold"; };
+ b = { fg = base05; bg = base01; };
+ c = { fg = base05; bg = base00; };
+ };
+ inactive = {
+ a = { fg = base04; bg = base00; gui = "bold"; };
+ b = { fg = base04; bg = base00; };
+ c = { fg = base04; bg = base00; };
+ };
+ };
+ icons_enabled = true;
+ };
+ };
+ };
+ noice = {
+ enable = true;
+ cmdline = {
+ enabled = true;
+ view = "cmdline_popup";
+ };
+ popupmenu = {
+ enabled = true;
+ backend = "cmp";
+ };
+ presets = {
+ command_palette = true;
+ };
+ };
+ nvim-tree = {
+ enable = true;
+ settings = {
+ filters = {
+ dotfiles = false;
+ git_clean = false;
+ no_buffer = false;
+ custom = {};
+ };
+ git = {
+ enable = true;
+ ignore = false;
+ };
+ view = {
+ width = {
+ padding = 0;
+ };
+ };
+ renderer = {
+ indent_markers = {
+ enable = true;
+ inline_arrows = false;
+ icons = {
+ corner = "└";
+ edge = "│";
+ item = "├";
+ bottom = "─";
+ none = " ";
+ };
+ };
+ icons = {
+ show = {
+ folder = true;
+ folder_arrow = false;
+ file = true;
+ git = true;
+ };
+ };
+ };
+ };
+ };
+ treesitter = {
+ enable = true;
+ settings = {
+ highlight = { enable = true; };
+ indent = { enable = true; };
+ };
+ };
+ web-devicons = {
+ enable = true;
+ };
+ which-key = {
+ enable = true;
+ settings = {
+ plugins = {
+ marks = true;
+ registers = true;
+ spelling = { enabled = true; suggestions = 20; };
+ };
+ window = { border = "single"; };
+ };
+ };
};
};
};