diff options
Diffstat (limited to '.config/nvim/lua/config')
-rw-r--r-- | .config/nvim/lua/config/colemak.lua | 29 | ||||
-rw-r--r-- | .config/nvim/lua/config/keymaps.lua | 42 | ||||
-rw-r--r-- | .config/nvim/lua/config/options.lua | 59 | ||||
-rw-r--r-- | .config/nvim/lua/config/vim.lua | 0 |
4 files changed, 130 insertions, 0 deletions
diff --git a/.config/nvim/lua/config/colemak.lua b/.config/nvim/lua/config/colemak.lua new file mode 100644 index 0000000..36b1e67 --- /dev/null +++ b/.config/nvim/lua/config/colemak.lua @@ -0,0 +1,29 @@ +local function map(mode, lhs, rhs, opts) + local options = { noremap = true, silent = true } + if opts then + options = vim.tbl_extend("force", options, opts) + end + vim.keymap.set(mode, lhs, rhs, options) +end + +map("", "n", "j") +map("", "e", "k") +map("", "i", "l") +map("", "j", "n") +map("", "k", "e") +map("", "l", "i") +map("", "K", "E") +map("", "N", "J") +map("", "E", "K") -- As in 'Explore' documentation +map("", "L", "I") +map("", "I", "L") +map("", "J", "N") + +map("n", "<c-w>h", "<c-w>h") +map("n", "<c-w>n", "<c-w>j") +map("n", "<c-w>e", "<c-w>k") +map("n", "<C-w>i", "<c-w>l") + +-- Kakoune Holdover +map ("", "gh", "0") +map ("", "gi", "$") diff --git a/.config/nvim/lua/config/keymaps.lua b/.config/nvim/lua/config/keymaps.lua new file mode 100644 index 0000000..80cd704 --- /dev/null +++ b/.config/nvim/lua/config/keymaps.lua @@ -0,0 +1,42 @@ +vim.g.mapleader = " " +vim.keymap.set("n", "<leader>bk", vim.cmd.bdelete, + { desc = "Kill Buffer" }) +vim.keymap.set("n", "<leader>bn", vim.cmd.bnext, + { desc = "Next Buffer" }) +vim.keymap.set("n", "<leader>bp", vim.cmd.bprev, + { desc = "Previous Buffer" }) + +vim.keymap.set("n", "E", vim.lsp.buf.hover) +vim.keymap.set("n", "<C-e>", vim.diagnostic.open_float) +vim.keymap.set("n", "<leader>ld", vim.lsp.buf.definition) +vim.keymap.set("n", "<leader>lt", vim.lsp.buf.type_definition) +vim.keymap.set("n", "<leader>li", vim.lsp.buf.implementation) +vim.keymap.set("n", "<leader>la", vim.lsp.buf.code_action) +vim.keymap.set("n", "<leader>lf", vim.lsp.buf.format) +vim.keymap.set("n", "<leader>lr", vim.lsp.buf.rename) +vim.keymap.set("n", "<leader>le", function() + vim.diagnostic.jump({ count = 1, float = true }) +end) + +vim.keymap.set("n", "<leader>wh", vim.cmd.split, + { desc = "Split Window Horizontally" }) +vim.keymap.set("n", "<leader>wv", vim.cmd.vsplit, + { desc = "Split Window Vertically" }) +vim.keymap.set("n", "<leader>wc", "<C-w>q", + { desc = "Close Window" }) +vim.keymap.set("n", "<leader>ww", "<C-w>w", + { desc = "Next Window" }) + +vim.keymap.set("n", "<leader>fc", function() + vim.cmd('edit ~/.config/nvim/init.lua') +end) +vim.keymap.set("n", "<leader>ft", function() + vim.cmd('edit ~/Documents/TODO.org') +end) +vim.keymap.set("n", "<leader>fn", function() + vim.cmd('edit ~/Documents/Notes.org') +end) + +vim.keymap.set('n', '<Tab>', '==', { noremap = true, silent = true }) + +vim.keymap.set('n', 'q:', ':q<CR>', { noremap = true }) diff --git a/.config/nvim/lua/config/options.lua b/.config/nvim/lua/config/options.lua new file mode 100644 index 0000000..c1621fa --- /dev/null +++ b/.config/nvim/lua/config/options.lua @@ -0,0 +1,59 @@ +vim.opt.nu = true +vim.opt.rnu = true + +vim.opt.tabstop = 2 +vim.opt.softtabstop = 2 +vim.opt.shiftwidth = 2 +vim.opt.expandtab = true +vim.opt.autoindent = true + +vim.opt.smartindent = true + +vim.opt.wrap = false + +vim.opt.swapfile = false +vim.opt.backup = false +vim.opt.undodir = os.getenv("HOME") .. "/.nvim/undodir" +vim.opt.undofile = true + +vim.opt.hlsearch = false +vim.opt.incsearch = true + +vim.opt.termguicolors = true + +vim.opt.scrolloff = 12 + +vim.opt.updatetime = 50 + +vim.opt.splitbelow = true +vim.opt.splitright = true + +vim.opt.encoding = "utf-8" + +vim.opt.shell = "zsh" + +vim.opt.mouse = "" + +vim.opt.ignorecase = true +vim.opt.smartcase = true +vim.opt.incsearch = true + +vim.opt.cursorline = true + +vim.opt.title = true + +vim.opt.clipboard = "unnamedplus" + +vim.opt.colorcolumn = "80" + +vim.opt.signcolumn = 'no' + +vim.cmd "set showtabline=0 | set laststatus=0" + +vim.wo.fillchars='eob: ' + +-- Remove Whitespaces on File Save +vim.api.nvim_create_autocmd({ "BufWritePre" }, { + pattern = { "*" }, + command = [[%s/\s\+$//e]], +}) diff --git a/.config/nvim/lua/config/vim.lua b/.config/nvim/lua/config/vim.lua new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/.config/nvim/lua/config/vim.lua |