feat: nixvim config
currently only for dnsc-air. can simply be imported in other hosts
This commit is contained in:
parent
ff32ecb811
commit
6543d4a7f3
21 changed files with 1541 additions and 10 deletions
138
modules/nixvim/keybindings.nix
Normal file
138
modules/nixvim/keybindings.nix
Normal file
|
|
@ -0,0 +1,138 @@
|
|||
{
|
||||
plugins.which-key.enable = true;
|
||||
keymaps = [
|
||||
# Open
|
||||
{
|
||||
mode = [ "n" ];
|
||||
key = "<leader>od";
|
||||
action = "<cmd>vsplit | lua vim.lsp.buf.definition()<cr>";
|
||||
options.desc = "Go to definition in other window";
|
||||
}
|
||||
|
||||
# Buffer
|
||||
{
|
||||
mode = [ "n" ];
|
||||
key = "<leader>bn";
|
||||
action = "<cmd>bn<cr>";
|
||||
options.desc = "Move to next buffer";
|
||||
}
|
||||
{
|
||||
mode = [ "n" ];
|
||||
key = "<leader>bp";
|
||||
action = "<cmd>bp<cr>";
|
||||
options.desc = "Move to previous buffer";
|
||||
}
|
||||
{
|
||||
mode = [ "n" ];
|
||||
key = "<leader>bk";
|
||||
action = "<cmd>bn<cr>";
|
||||
options.desc = "Kill buffer and window";
|
||||
}
|
||||
|
||||
# File
|
||||
{
|
||||
mode = [ "n" ];
|
||||
key = "<leader>fn";
|
||||
action = "<cmd>enew<cr>";
|
||||
options.desc = "Create a new file";
|
||||
}
|
||||
{
|
||||
mode = [ "n" ];
|
||||
key = "<leader>fs";
|
||||
action = "<cmd>w<cr>";
|
||||
options.desc = "Save currently opened file";
|
||||
}
|
||||
|
||||
# Quit
|
||||
{
|
||||
mode = [ "n" ];
|
||||
key = "<leader>qq";
|
||||
action = "<cmd>qa!<cr>";
|
||||
options.desc = "Leave neovim";
|
||||
}
|
||||
|
||||
# Diagnostics
|
||||
{
|
||||
mode = [ "n" ];
|
||||
key = "<leader>ta";
|
||||
action = "<cmd>TodoQuickFix<cr>";
|
||||
options.desc = "Show all todo comments";
|
||||
}
|
||||
|
||||
# Window
|
||||
{
|
||||
mode = [ "n" ];
|
||||
key = "<leader>w+";
|
||||
action = ":vertical resize +4<cr>";
|
||||
options.desc = "Increase window size";
|
||||
}
|
||||
{
|
||||
mode = [ "n" ];
|
||||
key = "<leader>w-";
|
||||
action = ":vertical resize -4<cr>";
|
||||
options.desc = "Decrease window size";
|
||||
}
|
||||
{
|
||||
mode = [ "n" ];
|
||||
key = "<leader>wx";
|
||||
action = ":bd<cr>";
|
||||
options.desc = "Kill active window and buffer";
|
||||
}
|
||||
{
|
||||
mode = [ "n" ];
|
||||
key = "<leader>wh";
|
||||
action = "<C-W>h";
|
||||
options.desc = "Move to window on left";
|
||||
}
|
||||
{
|
||||
mode = [ "n" ];
|
||||
key = "<leader>wj";
|
||||
action = "<C-W>j";
|
||||
options.desc = "Move to window on bottom";
|
||||
}
|
||||
{
|
||||
mode = [ "n" ];
|
||||
key = "<leader>wk";
|
||||
action = "<C-W>k";
|
||||
options.desc = "Move to window on top";
|
||||
}
|
||||
{
|
||||
mode = [ "n" ];
|
||||
key = "<leader>wl";
|
||||
action = "<C-W>l";
|
||||
options.desc = "Move to window on right";
|
||||
}
|
||||
{
|
||||
mode = [ "n" ];
|
||||
key = "<leader>ws";
|
||||
action = "<cmd>sp<cr>";
|
||||
options.desc = "Split windows horizontally";
|
||||
}
|
||||
{
|
||||
mode = [ "n" ];
|
||||
key = "<leader>wv";
|
||||
action = "<cmd>vsp<cr>";
|
||||
options.desc = "Split windows vertically";
|
||||
}
|
||||
{
|
||||
mode = [ "n" ];
|
||||
key = "<leader>wd";
|
||||
action = "<cmd>close<cr>";
|
||||
options.desc = "Delete window only";
|
||||
}
|
||||
|
||||
# Config
|
||||
{
|
||||
mode = [ "n" ];
|
||||
key = "<leader>xn";
|
||||
action = "<cmd>set number relativenumber<cr>";
|
||||
options.desc = "Show relative numbers";
|
||||
}
|
||||
{
|
||||
mode = [ "n" ];
|
||||
key = "<leader>xr";
|
||||
action = "<cmd>source $MYVIMRC<cr>";
|
||||
options.desc = "Reload config";
|
||||
}
|
||||
];
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue