Files
wmcv-nvim-config/nvim/lua/options.lua
T
2026-06-23 16:07:07 +02:00

57 lines
1.2 KiB
Lua

--options
vim.opt.number = true
vim.opt.relativenumber = true
vim.opt.tabstop = 4
vim.opt.softtabstop = 4
vim.opt.shiftwidth = 4
vim.opt.expandtab = true
vim.opt.smartindent = true
vim.opt.wrap = true
vim.opt.termguicolors = true
vim.opt.signcolumn = "yes"
vim.opt.updatetime = 200
vim.opt.clipboard = "unnamedplus"
-- search
vim.opt.ignorecase = true
vim.opt.hlsearch = true
vim.opt.incsearch = true
-- window splits
vim.opt.splitbelow = true
vim.opt.splitright = true
-- keep the context around the cursor when scrolling
vim.opt.scrolloff = 10
-- leader
vim.g.mapleader = " "
vim.g.maplocalleader = " "
-- keymappings
local map = vim.keymap.set
map("n", "<Esc>", "<cmd>nohlsearch<CR>")
-- window navigation
map("n", "<C-h>", "<C-w>h")
map("n", "<C-l>", "<C-w>l")
map("n", "<C-j>", "<C-w>j")
map("n", "<C-k>", "<C-w>k")
-- move selected lines up/down in visual mode
map("v", "J", ":m '>+1<CR>gv=gv")
map("v", "K", ":m '<-2<CR>gv=gv")
-- keep cursor centred when jumping
map("n", "<C-d>", "<C-d>zz")
map("n", "<C-u>", "<C-u>zz")
map("n", "n", "nzzzv")
map("n", "N", "Nzzzv")
-- quickfix navigation (for build errors)
map("n", "<leader>qo", "<cmd>copen<CR>")
map("n", "<leader>qc", "<cmd>cclose<CR>")
map("n", "]q", "<cmd>cnext<CR>")
map("n", "[q", "<cmd>cprev<CR>")