vim.g.mapleader=" " vim.g.maplocalleader=" " vim.keymap.set("n", "pv", vim.cmd.Ex) --[[vim.cmd[[ au VimEnter * silent! !xmodmap -e 'clear Lock' -e 'keycode 0x42 = Escape' au VimLeave * silent! !xmodmap -e 'clear Lock' -e 'keycode 0x42 = Caps_Lock'> ]] --move highlighted stuffs vim.keymap.set("v", "J", ":m '>+1gv=gv") vim.keymap.set("v", "K", ":m '<-2gv=gv") --keeps cursor at cur pos when stacking lines to single line vim.keymap.set("n", "J", "mzJ`z") --keeps cursur in middle with up down vim.keymap.set("n", "", "zz") vim.keymap.set("n", "", "zz") vim.keymap.set("n", "n", "nzzzv") vim.keymap.set("n", "N", "Nzzzv") --sets leader y to put in sys clipboard vim.keymap.set("n", "y", "\"+y") vim.keymap.set("v", "y", "\"+y") vim.keymap.set("n", "Y", "\"+Y") --paste but dont overwrite current register with selection vim.keymap.set("v", "p", "\"_dP") --nnoremap S :%s//g vim.keymap.set("n", "S", [[:%s//]]) vim.keymap.set('n', 'lw', ':set wrap!') --stay in indent mode vim.keymap.set('v', '<', '', '>gv', {noremap = true}) --reize with arrows vim.keymap.set('n', '', ':resize -2') vim.keymap.set('n', '', ':resize +2') vim.keymap.set('n', '', ':vertical resize -2') vim.keymap.set('n', '', ':vertical resize +2') -- window management vim.keymap.set('n', 'v', 'v') vim.keymap.set('n', 'h', 's') vim.keymap.set('n', 'se', '=') vim.keymap.set('n', 'sx', ':close') -- navigate splits vim.keymap.set("n","","h") vim.keymap.set("n","","j") vim.keymap.set("n","","l") vim.keymap.set("n","","k") -- navigate tabs vim.keymap.set('n', 'to', ':tabnew') vim.keymap.set('n', 'tx', ':tabclose') vim.keymap.set('n', 'tn', ':tabn') vim.keymap.set('n', 'tp', ':tabp') vim.keymap.set("n", "ee", "oif err != nil {}Oreturn err") --per file type log quick binds local cc_command="" local filename = vim.api.nvim_buf_get_name(0) if string.find(filename,".*%.js$") then cc_command="oconsole.log();V=$hi" elseif string.find(filename,".*%.lua$") then cc_command="oterm.print()V=$i" elseif string.find(filename,".*%.c$") then cc_command="oprintf(\"debug: %i\",);V=$hi" elseif string.find(filename,".*%.rs$") then cc_command="oprintln!(\"debug: {}\",);V=$hi" end vim.keymap.set("n", "cc", cc_command) local auto_close=false local function toggle_auto_close() if auto_close==false then vim.keymap.set("i", "{", "{}ko"); vim.keymap.set("i", "(", "()i"); if string.find(filename,".*%.html$") then vim.keymap.set("i", "<", "<"); vim.keymap.set("i", ">", ">TahpFi"); vim.keymap.set("i", ">", ">"); end vim.keymap.set("i", "[", "[]i"); vim.keymap.set("i", "\"", "\"\"i"); vim.keymap.set("i", "'", "''i"); auto_close=true else vim.keymap.set("i", "{", "{"); vim.keymap.set("i", "(", "("); vim.keymap.set("i", "<", "<"); vim.keymap.set("i", ">", ">"); vim.keymap.set("i", "[", "["); vim.keymap.set("i", "\"", "\""); vim.keymap.set("i", "'", "'"); auto_close=false end end toggle_auto_close() vim.keymap.set("n", "k", toggle_auto_close) --[[ vim.keymap("i","", function() end) ]] local colemak_switch=false local colemak_tog = function() if colemak_switch==true then colemak_switch=false vim.keymap.set("n","d","d") vim.keymap.set("n","e","e") vim.keymap.set("n","f","f") vim.keymap.set("n","g","g") vim.keymap.set("n","i","i") vim.keymap.set("n","j","j") vim.keymap.set("n","k","k") vim.keymap.set("n","l","l") vim.keymap.set("n","n","n") vim.keymap.set("n","o","o") vim.keymap.set("n","p","p") vim.keymap.set("n","r","r") vim.keymap.set("n","s","s") vim.keymap.set("n","t","t") vim.keymap.set("n","u","u") vim.keymap.set("n","y","y") vim.keymap.set("n","D","D") vim.keymap.set("n","E","E") vim.keymap.set("n","F","F") vim.keymap.set("n","G","G") vim.keymap.set("n","I","I") vim.keymap.set("n","J","J") vim.keymap.set("n","K","K") vim.keymap.set("n","L","L") vim.keymap.set("n","N","N") vim.keymap.set("n","O","O") vim.keymap.set("n","P","P") vim.keymap.set("n","R","R") vim.keymap.set("n","S","S") vim.keymap.set("n","T","T") vim.keymap.set("n","U","U") vim.keymap.set("n","Y","Y") vim.keymap.set("v","d","d") vim.keymap.set("v","e","e") vim.keymap.set("v","f","f") vim.keymap.set("v","g","g") vim.keymap.set("v","i","i") vim.keymap.set("v","j","j") vim.keymap.set("v","k","k") vim.keymap.set("v","l","l") vim.keymap.set("v","n","n") vim.keymap.set("v","o","o") vim.keymap.set("v","p","p") vim.keymap.set("v","r","r") vim.keymap.set("v","s","s") vim.keymap.set("v","t","t") vim.keymap.set("v","u","u") vim.keymap.set("v","y","y") vim.keymap.set("v","D","D") vim.keymap.set("v","E","E") vim.keymap.set("v","F","F") vim.keymap.set("v","G","G") vim.keymap.set("v","I","I") vim.keymap.set("v","J","J") vim.keymap.set("v","K","K") vim.keymap.set("v","L","L") vim.keymap.set("v","N","N") vim.keymap.set("v","O","O") vim.keymap.set("v","P","P") vim.keymap.set("v","R","R") vim.keymap.set("v","S","S") vim.keymap.set("v","T","T") vim.keymap.set("v","U","U") vim.keymap.set("v","Y","Y") else colemak_switch=true vim.keymap.set("n","d","g") vim.keymap.set("n","e","k") vim.keymap.set("n","f","e") vim.keymap.set("n","g","t") vim.keymap.set("n","i","l") vim.keymap.set("n","j","y") vim.keymap.set("n","k","n") vim.keymap.set("n","l","u") vim.keymap.set("n","n","j") vim.keymap.set("n","o","p") vim.keymap.set("n","p","r") vim.keymap.set("n","r","s") vim.keymap.set("n","s","d") vim.keymap.set("n","t","f") vim.keymap.set("n","u","i") vim.keymap.set("n","y","o") vim.keymap.set("n","D","G") vim.keymap.set("n","E","K") vim.keymap.set("n","F","E") vim.keymap.set("n","G","T") vim.keymap.set("n","I","L") vim.keymap.set("n","J","Y") vim.keymap.set("n","K","N") vim.keymap.set("n","L","U") vim.keymap.set("n","N","J") vim.keymap.set("n","O","P") vim.keymap.set("n","P","R") vim.keymap.set("n","R","S") vim.keymap.set("n","S","D") vim.keymap.set("n","T","F") vim.keymap.set("n","U","I") vim.keymap.set("n","Y","O") vim.keymap.set("v","d","g") vim.keymap.set("v","e","k") vim.keymap.set("v","f","e") vim.keymap.set("v","g","t") vim.keymap.set("v","i","l") vim.keymap.set("v","j","y") vim.keymap.set("v","k","n") vim.keymap.set("v","l","u") vim.keymap.set("v","n","j") vim.keymap.set("v","o","p") vim.keymap.set("v","p","r") vim.keymap.set("v","r","s") vim.keymap.set("v","s","d") vim.keymap.set("v","t","f") vim.keymap.set("v","u","i") vim.keymap.set("v","y","o") vim.keymap.set("v","D","G") vim.keymap.set("v","E","K") vim.keymap.set("v","F","E") vim.keymap.set("v","G","T") vim.keymap.set("v","I","L") vim.keymap.set("v","J","Y") vim.keymap.set("v","K","N") vim.keymap.set("v","L","U") vim.keymap.set("v","N","J") vim.keymap.set("v","O","P") vim.keymap.set("v","P","R") vim.keymap.set("v","R","S") vim.keymap.set("v","S","D") vim.keymap.set("v","T","F") vim.keymap.set("v","U","I") vim.keymap.set("v","Y","O") end end vim.keymap.set("n", "r", colemak_tog)