require('plugins') local map = vim.keymap.set local set = vim.opt set.clipboard = 'unnamedplus' set.wrap = false set.number = true set.relativenumber = true set.ignorecase = true set.smartcase = true set.termguicolors = true set.swapfile = false set.backup = false set.undodir = os.getenv("XDG_CACHE_HOME") .. "/nvim/undo" set.undofile = true set.hlsearch = false set.incsearch = true set.cursorline = true set.cmdheight = 0 set.mouse = 'a' set.splitright = true set.splitbelow = true set.updatetime = 600 set.signcolumn = "yes" set.tabstop = 4 set.softtabstop = 4 set.shiftwidth = 4 set.expandtab = true vim.g.mapleader = " " map("v", "J", ":m '>+1gv=gv") map("v", "K", ":m '<-2gv=gv") map("x", "J", ":m '>+1gv-gv", opts) map("x", "K", ":m '<-2gv-gv", opts) map("v", "<", "", ">gv", opts) map("n", "J", "mzJ`z") map("n", "", vim.cmd.w) map("n", "", vim.cmd.wq) map("n", "", vim.cmd.source) map("n", "", "") map("n", "vv", "^vg_", { noremap = true }) map("n", "-", vim.cmd.Ex, {}) map('n', 'U', vim.cmd.redo) local ts = require('telescope.builtin') map('n', 'f', ts.find_files, {}) map('n', 'g', ts.live_grep, {}) map('n', 'b', ts.buffers, {}) map('n', 't', ts.help_tags, {}) map('n', 'c', ts.commands, {}) -- TODO If we use this one a lot, might be better to bind it to something easier map('n', 'bb', ':b#') map('n', 'bn', vim.cmd.bnext) map('n', 'bk', vim.cmd.bdelete) -- Window management map('n', 'wo', 'o') map('n', 'wc', 'c') map('n', 'wv', 'v') map('n', 'ws', 's') map('n', 'ww', 'p') map('n', 'wr', 'r') map('n', 'wx', 'x') map('n', 'wt', 'T') map('n', 'wh', 'H') map('n', 'wj', 'J') map('n', 'wk', 'K') map('n', 'wl', 'L') map("n", "", ":resize -2", opts) map("n", "", ":resize +2", opts) map("n", "", ":vertical resize -2", opts) map("n", "", ":vertical resize +2", opts) map('n', '', 'h', {}) map('n', '', 'j', {}) map('n', '', 'k', {}) map('n', '', 'l', {}) -- local neogit = require('neogit') -- -- neogit.setup {} vim.keymap.set("n", "tw", ":set wrap!")