aboutsummaryrefslogtreecommitdiffstats
path: root/modules/home/conf/nvim/mappings
diff options
context:
space:
mode:
Diffstat (limited to 'modules/home/conf/nvim/mappings')
-rw-r--r--modules/home/conf/nvim/mappings/default.nix282
1 files changed, 0 insertions, 282 deletions
diff --git a/modules/home/conf/nvim/mappings/default.nix b/modules/home/conf/nvim/mappings/default.nix
deleted file mode 100644
index af800d22..00000000
--- a/modules/home/conf/nvim/mappings/default.nix
+++ /dev/null
@@ -1,282 +0,0 @@
-{lib, ...}: {
- programs.nixvim = {
- globals = {
- mapleader = " ";
- maplocalleader = " ";
- };
- keymaps = [
- {
- mode = ["n" "i"];
- key = "<Esc>";
- action = "<cmd>noh<CR><Esc>";
- options.desc = "Disable the search highlighting and send Escape";
- }
- {
- key = "hh";
- mode = ["i"];
- action.__raw = ''
- function()
- local cmp = require('cmp');
- local luasnip = require('luasnip');
-
- if cmp.visible() then
- cmp.select_next_item()
- elseif luasnip.expand_or_locally_jumpable() then
- luasnip.expand_or_jump()
- end
- end
- '';
- options.desc = "completion trigger/ forward in completen menu";
- }
- {
- key = "uu";
- mode = ["i"];
- action.__raw = ''
- function()
- local cmp = require('cmp');
- cmp.confirm()
- end
- '';
- options.desc = "confirm the selected item";
- }
-
- # FIXME: Add the below keymappings, when alacritty gets support for the kitty
- # keyboard protocol <2023-08-29>
- {
- # "<C-Tab>"
- key = "ztn";
- action = "<cmd>tabnext<CR>";
- options.desc = "cycle to the next tab";
- }
- {
- # "<S-C-Tab>"
- key = "ztp";
- action = "<cmd>tabprevious<CR>";
- options.desc = "cycle to the previous tab";
- }
-
- # yank/ cut to the system clipboard
- {
- key = "<leader>y";
- action = "\"+y";
- options.desc = "yank to the system clipboard";
- }
- {
- key = "<leader>Y";
- action = "\"+Y";
- options.desc = "yank until the end of the line to the system clipboard";
- }
-
- # Unmap some old keys
- #{key = "s"; action = "'<Nop>'";}
- #{key = "t"; action = "'<Nop>'";}
- {
- key = "<Up>";
- action = "<Nop>";
- }
- {
- key = "<Down>";
- action = "<Nop>";
- }
- {
- key = "<Left>";
- action = "<Nop>";
- }
- {
- key = "<Right>";
- action = "<Nop>";
- }
-
- # Center the cursor vertically when moving to the next word during a search.
- {
- key = "l";
- action = "nzzzv";
- options.desc = "Center the cursor vertically when moving to the next word during a search.";
- }
- {
- key = "L";
- action = "Nzzzv";
- options.desc = "Center the cursor vertically when moving to the next word during a search.";
- }
- # remap the other keys to dvorak
- {
- key = "k";
- action = "t";
- options.desc = "go the the right on char";
- }
- {
- key = "K";
- action = "T";
- options.desc = "go to the left on char";
- }
- {
- key = "j";
- action = "k";
- options.desc = "go to the right before the char";
- }
- {
- key = "J";
- action = "K";
- options.desc = "go to the left before the char";
- }
-
- # Change Vim-keys
- {
- key = "h";
- action = "<left>";
- options.desc = "go left";
- }
- {
- key = "t";
- action = "g<down>";
- options.desc = "go down, with displaylines";
- }
- {
- key = "n";
- action = "g<up>";
- options.desc = "go up, with displaylines";
- }
- {
- key = "s";
- action = "<right>";
- options.desc = "go right";
- }
-
- # Move display lines
- {
- key = "0";
- action = "g0";
- options.desc = "go to the leftmost character in the screen line";
- }
- {
- key = "$";
- action = "g$";
- options.desc = "go to the rightmost character in the screen line";
- }
- {
- mode = ["n"];
- key = "<Enter>";
- action = "gf";
- options.desc = "open file/url under cursor";
- }
- {
- mode = ["n"];
- key = "<Tab>";
- action = ":";
- options.desc = "jump to command line";
- }
-
- {
- mode = ["n"];
- key = "\\f";
- action.__raw = "function() require('lf').start() end";
- options.desc = "open lf in a floating window";
- }
-
- # Splits
- {
- mode = ["n"];
- key = "<C-t>";
- action = "<C-w>p";
- options.desc = "go to previous split";
- }
- {
- mode = ["n"];
- key = "<C-n>";
- action = "<C-w>w";
- options.desc = "go to next split";
- }
- {
- mode = ["n"];
- key = "<leader>-";
- action = "<C-W>s";
- options.desc = "New horizontal split";
- }
- {
- mode = ["n"];
- key = "<leader>|";
- action = "<C-W>v";
- options.desc = "New vertical split";
- }
-
- {
- mode = ["n"];
- key = "<leader>p";
- action = "\"_dP";
- options.desc = "keep the cut thing in the base register";
- }
- {
- mode = ["n"];
- key = "<leader>c";
- action = "\"_c";
- options.desc = "change without saving to register";
- }
-
- {
- mode = ["n"];
- key = "<leader>d";
- action = "\"_d";
- options.desc = "delete without saving to register";
- }
- {
- key = "dd";
- mode = ["n"];
- action.__raw = ''
- function()
- if vim.api.nvim_get_current_line():match("^%s*$") then
- return '"_dd'
- else
- return "dd"
- end
- end
- '';
- options = {
- desc = "Pipe all blank line deletions to the blackhole register";
- expr = true;
- silent = true;
- };
- }
-
- {
- mode = ["n"];
- key = "<leader>s";
- action = ":%s/\\<<C-r><C-w>\\>/<C-r><C-w>/gI<Left><Left><Left>";
- options.desc = "replace for the word under the cursor";
- }
-
- {
- mode = ["n"];
- key = "<C-s>";
- action = "<cmd>mksession! <CR>";
- options.desc = "overwrite/create a session";
- }
-
- {
- mode = ["n"];
- key = "<leader>X";
- action = "!!$SHELL <CR>";
- options.desc = "Read the current line and execute that line in your $SHELL. The resulting output will replace the curent line that was being executed.";
- }
- {
- mode = ["t"];
- key = "<Esc><Esc>";
- action = "<C-\\><C-n>";
- options.desc = "Exit terminal mode with <Esc><Esc>";
- }
-
- # move selected lines in visual mode
- {
- mode = ["v"];
- key = "T";
- action = ":m '>+1<CR>gv=gv";
- options.desc = "move selected lines in visual mode down";
- }
- {
- mode = ["v"];
- key = "N";
- action = ":m '<-2<CR>gv=gv";
- options.desc = "move selected lines in visual mode up";
- }
- ];
- };
-}