vim.g.netrw_liststyle = 3 vim.g.mapleader = " " vim.g.maplocalleader = " " -- options local opt = vim.opt opt.relativenumber = true opt.number = true opt.autoread = true -- automatically reload modified files opt.wildmenu = true -- handle autocompletion menu -- utility functions for key mappings function ToggleLineNumbering() vim.o.number = not vim.o.number vim.o.relativenumber = vim.o.number end -- keymappings local keymap = vim.keymap keymap.set('n', 'n', ':lua ToggleLineNumbering()', {desc="Toggle line numbering"}) keymap.set('', '', ':bnext', {desc="Jump to next buffer"}) keymap.set('', '', ':bprev', {desc="Jump to previous buffer"}) keymap.set('', '', 'h', {desc="Focus window left"}) keymap.set('', '', 'j', {desc="Focus window down"}) keymap.set('', '', 'k', {desc="Focus window up"}) keymap.set('', '', 'l', {desc="Focus window right"}) keymap.set('n', 'pu', ':Lazy update', {desc="Update plugins managed by Lazy"}) keymap.set('n', 'pi', ':Lazy install', {desc="Install missing plugins managed by Lazy"}) keymap.set('n', 'pc', ':Lazy clean', {desc="Clean plugins managed by Lazy"}) keymap.set('n', 'w', ':w!', {desc="Quicksave"}) keymap.set('n', '', 'mzgg=G`z', {desc="Auto-format entire document"}) keymap.set('v', '', ':sort', {desc="Sort selected lines alphanumerically"})