feat: small improvements (#25)

- Renamed and moved settings in some plugins due to upstream changes
- Added comments to neovim settings
- Added cmdheight = 0 and mouse = "a" settings to config
This commit is contained in:
Roel de Cort 2024-08-26 23:37:02 +02:00 committed by GitHub
parent 01025e42f3
commit 502d31e03c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 275 additions and 159 deletions

View file

@ -2,54 +2,77 @@
globals.mapleader = " "; globals.mapleader = " ";
keymaps = [ keymaps = [
{ {
mode = ["n" "x"]; mode = ["n" "x"];
key = "j"; key = "j";
action = "v:count == 0 ? 'gj' : 'j'"; action = "v:count == 0 ? 'gj' : 'j'";
options = {expr = true; silent = true;}; options = {
expr = true;
silent = true;
};
} }
{ {
mode = ["n" "x"]; mode = ["n" "x"];
key = "<Down>"; key = "<Down>";
action = "v:count == 0 ? 'gj' : 'j'"; action = "v:count == 0 ? 'gj' : 'j'";
options = {expr = true; silent = true;}; options = {
expr = true;
silent = true;
};
} }
{ {
mode = ["n" "x"]; mode = ["n" "x"];
key = "k"; key = "k";
action = "v:count == 0 ? 'gk' : 'k'"; action = "v:count == 0 ? 'gk' : 'k'";
options = {expr = true; silent = true;}; options = {
expr = true;
silent = true;
};
} }
{ {
mode = ["n" "x"]; mode = ["n" "x"];
key = "<Up>"; key = "<Up>";
action = "v:count == 0 ? 'gk' : 'k'"; action = "v:count == 0 ? 'gk' : 'k'";
options = {expr = true; silent = true;}; options = {
expr = true;
silent = true;
};
} }
{ {
mode = "n"; mode = "n";
key = "<C-h>"; key = "<C-h>";
action = "<C-w>h"; action = "<C-w>h";
options = {desc = "Go to Left Window"; remap = true;}; options = {
desc = "Go to Left Window";
remap = true;
};
} }
{ {
mode = "n"; mode = "n";
key = "<C-j>"; key = "<C-j>";
action = "<C-w>j"; action = "<C-w>j";
options = {desc = "Go to Lower Window"; remap = true;}; options = {
desc = "Go to Lower Window";
remap = true;
};
} }
{ {
mode = "n"; mode = "n";
key = "<C-k>"; key = "<C-k>";
action = "<C-w>k"; action = "<C-w>k";
options = {desc = "Go to Upper Window"; remap = true;}; options = {
desc = "Go to Upper Window";
remap = true;
};
} }
{ {
mode = "n"; mode = "n";
key = "<C-l>"; key = "<C-l>";
action = "<C-w>l"; action = "<C-w>l";
options = {desc = "Go to Right Window"; remap = true;}; options = {
desc = "Go to Right Window";
remap = true;
};
} }
{ {
mode = "n"; mode = "n";
@ -148,37 +171,55 @@
mode = "n"; mode = "n";
key = "n"; key = "n";
action = "'Nn'[v:searchforward].'zv'"; action = "'Nn'[v:searchforward].'zv'";
options = {expr = true; desc = "Next Search Result";}; options = {
expr = true;
desc = "Next Search Result";
};
} }
{ {
mode = "x"; mode = "x";
key = "n"; key = "n";
action = "'Nn'[v:searchforward]"; action = "'Nn'[v:searchforward]";
options = {expr = true; desc = "Next Search Result";}; options = {
expr = true;
desc = "Next Search Result";
};
} }
{ {
mode = "o"; mode = "o";
key = "n"; key = "n";
action = "'Nn'[v:searchforward]"; action = "'Nn'[v:searchforward]";
options = {expr = true; desc = "Next Search Result";}; options = {
expr = true;
desc = "Next Search Result";
};
} }
{ {
mode = "n"; mode = "n";
key = "N"; key = "N";
action = "'nN'[v:searchforward].'zv'"; action = "'nN'[v:searchforward].'zv'";
options = {expr = true; desc = "Prev Search Result";}; options = {
expr = true;
desc = "Prev Search Result";
};
} }
{ {
mode = "x"; mode = "x";
key = "N"; key = "N";
action = "'nN'[v:searchforward]"; action = "'nN'[v:searchforward]";
options = {expr = true; desc = "Prev Search Result";}; options = {
expr = true;
desc = "Prev Search Result";
};
} }
{ {
mode = "o"; mode = "o";
key = "N"; key = "N";
action = "'nN'[v:searchforward]"; action = "'nN'[v:searchforward]";
options = {expr = true; desc = "Prev Search Result";}; options = {
expr = true;
desc = "Prev Search Result";
};
} }
{ {
mode = "n"; mode = "n";
@ -274,37 +315,55 @@
mode = "n"; mode = "n";
key = "<leader>ww"; key = "<leader>ww";
action = "<C-W>p"; action = "<C-W>p";
options = {desc = "Other Window"; remap = true;}; options = {
desc = "Other Window";
remap = true;
};
} }
{ {
mode = "n"; mode = "n";
key = "<leader>wd"; key = "<leader>wd";
action = "<C-W>c"; action = "<C-W>c";
options = {desc = "Delete Window"; remap = true;}; options = {
desc = "Delete Window";
remap = true;
};
} }
{ {
mode = "n"; mode = "n";
key = "<leader>w-"; key = "<leader>w-";
action = "<C-W>s"; action = "<C-W>s";
options = {desc = "Split Window Below"; remap = true;}; options = {
desc = "Split Window Below";
remap = true;
};
} }
{ {
mode = "n"; mode = "n";
key = "<leader>w|"; key = "<leader>w|";
action = "<C-W>v"; action = "<C-W>v";
options = {desc = "Split Window Right"; remap = true;}; options = {
desc = "Split Window Right";
remap = true;
};
} }
{ {
mode = "n"; mode = "n";
key = "<leader>-"; key = "<leader>-";
action = "<C-W>s"; action = "<C-W>s";
options = {desc = "Split Window Below"; remap = true;}; options = {
desc = "Split Window Below";
remap = true;
};
} }
{ {
mode = "n"; mode = "n";
key = "<leader>|"; key = "<leader>|";
action = "<C-W>v"; action = "<C-W>v";
options = {desc = "Split Window Right"; remap = true;}; options = {
desc = "Split Window Right";
remap = true;
};
} }
{ {
mode = "n"; mode = "n";
@ -344,4 +403,3 @@
} }
]; ];
} }

View file

@ -1,12 +1,14 @@
_: { _: {
plugins.todo-comments = { plugins.todo-comments = {
enable = true; enable = true;
colors = { settings = {
error = ["DiagnosticError" "ErrorMsg" "#ED8796"]; colors = {
warning = ["DiagnosticWarn" "WarningMsg" "#EED49F"]; error = ["DiagnosticError" "ErrorMsg" "#ED8796"];
info = ["DiagnosticInfo" "#EED49F"]; warning = ["DiagnosticWarn" "WarningMsg" "#EED49F"];
default = ["Identifier" "#F5A97F"]; info = ["DiagnosticInfo" "#EED49F"];
test = ["Identifier" "#8AADF4"]; default = ["Identifier" "#F5A97F"];
test = ["Identifier" "#8AADF4"];
};
}; };
}; };
} }

View file

@ -41,128 +41,130 @@
''; '';
plugins.conform-nvim = { plugins.conform-nvim = {
enable = true; enable = true;
formatOnSave = '' settings = {
function(bufnr) format_on_save = ''
if vim.g.disable_autoformat or vim.b[bufnr].disable_autoformat then function(bufnr)
return if vim.g.disable_autoformat or vim.b[bufnr].disable_autoformat then
end return
if slow_format_filetypes[vim.bo[bufnr].filetype] then
return
end
local function on_format(err)
if err and err:match("timeout$") then
slow_format_filetypes[vim.bo[bufnr].filetype] = true
end end
if slow_format_filetypes[vim.bo[bufnr].filetype] then
return
end
local function on_format(err)
if err and err:match("timeout$") then
slow_format_filetypes[vim.bo[bufnr].filetype] = true
end
end
return { timeout_ms = 200, lsp_fallback = true }, on_format
end
'';
format_after_save = ''
function(bufnr)
if vim.g.disable_autoformat or vim.b[bufnr].disable_autoformat then
return
end
if not slow_format_filetypes[vim.bo[bufnr].filetype] then
return
end
return { lsp_fallback = true }
end end
'';
notify_on_error = true;
formatters_by_ft = {
html = [
[
"prettierd"
"prettier"
]
];
css = [
[
"prettierd"
"prettier"
]
];
javascript = [
[
"prettierd"
"prettier"
]
];
typescript = [
[
"prettierd"
"prettier"
]
];
python = [
"black"
"isort"
];
lua = ["stylua"];
nix = ["alejandra"];
markdown = [
[
"prettierd"
"prettier"
]
];
yaml = [
[
"prettierd"
"prettier"
]
];
terraform = ["terraform_fmt"];
bicep = ["bicep"];
bash = [
"shellcheck"
"shellharden"
"shfmt"
];
json = ["jq"];
"_" = ["trim_whitespace"];
};
return { timeout_ms = 200, lsp_fallback = true }, on_format formatters = {
end black = {
''; command = "${lib.getExe pkgs.black}";
};
formatAfterSave = '' isort = {
function(bufnr) command = "${lib.getExe pkgs.isort}";
if vim.g.disable_autoformat or vim.b[bufnr].disable_autoformat then };
return alejandra = {
end command = "${lib.getExe pkgs.alejandra}";
};
if not slow_format_filetypes[vim.bo[bufnr].filetype] then jq = {
return command = "${lib.getExe pkgs.jq}";
end };
prettierd = {
return { lsp_fallback = true } command = "${lib.getExe pkgs.prettierd}";
end };
''; stylua = {
notifyOnError = true; command = "${lib.getExe pkgs.stylua}";
formattersByFt = { };
html = [ shellcheck = {
[ command = "${lib.getExe pkgs.shellcheck}";
"prettierd" };
"prettier" shfmt = {
] command = "${lib.getExe pkgs.shfmt}";
]; };
css = [ shellharden = {
[ command = "${lib.getExe pkgs.shellharden}";
"prettierd" };
"prettier" bicep = {
] command = "${lib.getExe pkgs.bicep}";
]; };
javascript = [ #yamlfmt = {
[ # command = "${lib.getExe pkgs.yamlfmt}";
"prettierd" #};
"prettier"
]
];
typescript = [
[
"prettierd"
"prettier"
]
];
python = [
"black"
"isort"
];
lua = ["stylua"];
nix = ["alejandra"];
markdown = [
[
"prettierd"
"prettier"
]
];
yaml = [
[
"prettierd"
"prettier"
]
];
terraform = ["terraform_fmt"];
bicep = ["bicep"];
bash = [
"shellcheck"
"shellharden"
"shfmt"
];
json = ["jq"];
"_" = ["trim_whitespace"];
};
formatters = {
black = {
command = "${lib.getExe pkgs.black}";
}; };
isort = {
command = "${lib.getExe pkgs.isort}";
};
alejandra = {
command = "${lib.getExe pkgs.alejandra}";
};
jq = {
command = "${lib.getExe pkgs.jq}";
};
prettierd = {
command = "${lib.getExe pkgs.prettierd}";
};
stylua = {
command = "${lib.getExe pkgs.stylua}";
};
shellcheck = {
command = "${lib.getExe pkgs.shellcheck}";
};
shfmt = {
command = "${lib.getExe pkgs.shfmt}";
};
shellharden = {
command = "${lib.getExe pkgs.shellharden}";
};
bicep = {
command = "${lib.getExe pkgs.bicep}";
};
#yamlfmt = {
# command = "${lib.getExe pkgs.yamlfmt}";
#};
}; };
}; };
}; };

View file

@ -2,23 +2,28 @@
plugins = { plugins = {
bufferline = { bufferline = {
enable = true; enable = true;
diagnostics = "nvim_lsp"; settings = {
mode = "buffers"; options = {
diagnostics = "nvim_lsp";
mode = "buffers";
closeIcon = " "; close_icon = " ";
bufferCloseIcon = "󰱝 "; buffer_close_icon = "󰱝 ";
modifiedIcon = "󰔯 "; modified_icon = "󰔯 ";
offsets = [ offsets = [
{ {
filetype = "neo-tree"; filetype = "neo-tree";
text = "Neo-tree"; text = "Neo-tree";
highlight = "Directory"; highlight = "Directory";
text_align = "left"; text_align = "left";
} }
]; ];
};
};
}; };
}; };
keymaps = [ keymaps = [
{ {
mode = "n"; mode = "n";

View file

@ -14,29 +14,78 @@
}; };
opts = { opts = {
# Show line numbers
number = true; number = true;
# Show relative line numbers
relativenumber = true; relativenumber = true;
# Use the system clipboard
clipboard = "unnamedplus"; clipboard = "unnamedplus";
# Number of spaces that represent a <TAB>
tabstop = 2; tabstop = 2;
softtabstop = 2; softtabstop = 2;
# Show tabline always
showtabline = 2; showtabline = 2;
# Use spaces instead of tabs
expandtab = true; expandtab = true;
# Enable smart indentation
smartindent = true; smartindent = true;
# Number of spaces to use for each step of (auto)indent
shiftwidth = 2; shiftwidth = 2;
# Enable break indent
breakindent = true; breakindent = true;
# Highlight the screen line of the cursor
cursorline = true; cursorline = true;
# Minimum number of screen lines to keep above and below the cursor
scrolloff = 8; scrolloff = 8;
# Enable mouse support
mouse = "a";
# Set folding method to manual
foldmethod = "manual"; foldmethod = "manual";
# Disable folding by default
foldenable = false; foldenable = false;
# Wrap long lines at a character in 'breakat'
linebreak = true; linebreak = true;
# Disable spell checking
spell = false; spell = false;
# Disable swap file creation
swapfile = false; swapfile = false;
# Time in milliseconds to wait for a mapped sequence to complete
timeoutlen = 300; timeoutlen = 300;
# Enable 24-bit RGB color in the TUI
termguicolors = true; termguicolors = true;
# Don't show mode in the command line
showmode = false; showmode = false;
# Open new split below the current window
splitbelow = true; splitbelow = true;
# Keep the screen when splitting
splitkeep = "screen"; splitkeep = "screen";
# Open new split to the right of the current window
splitright = true; splitright = true;
# Hide command line unless needed
cmdheight = 0;
}; };
}; };
} }