local map = vim.keymap.set vim.g.mapleader = " " vim.g.termguicolors = true -- Enable 24-bit RGB colors vim.o.nu = true -- Show line numbers vim.o.cursorline = true -- Highlight the line where the cursor is vim.o.wrap = false -- Don't wrap long lines to the next line vim.o.list = true -- Show invisible characters (tabs, trailing spaces) vim.o.scrolloff = 8 -- Keep 8 lines above/below cursor when scrolling vim.o.winborder = 'rounded' -- Use rounded borders for floating windows vim.o.ignorecase = true -- Ignore case in search patterns vim.o.smartcase = true -- ...unless search contains an uppercase letter vim.o.hlsearch = true -- Keep search results highlighted vim.o.incsearch = true -- Show search results as you type vim.o.path = "**" -- Search down into subdirectories (classic Vim) vim.o.expandtab = true -- Use spaces instead of tabs vim.o.tabstop = 4 -- 1 tab = 4 spaces vim.o.shiftwidth = 4 -- Indentation amount for >> and << commands vim.o.swapfile = false -- Disable creation of .swp files vim.o.backup = false -- Disable backup files vim.o.undofile = true -- Save undo history to a file vim.o.splitright = true -- Open vertical splits to the right vim.o.splitbelow = true -- Open horizontal splits below vim.o.timeoutlen = 300 -- Time (ms) to wait for a mapped sequence to complete vim.opt.clipboard = "unnamedplus" vim.o.completeopt = 'menuone,noselect' vim.o.undodir = os.getenv("HOME") .. "/.cache/nvim/undodir" vim.api.nvim_create_autocmd("BufEnter", { pattern = "term://*", callback = function() vim.cmd("startinsert") end }) vim.lsp.enable({ "gopls", "gdscript" }) vim.cmd(":colorscheme retrobox") map({"t", "n"}, "", "") map({"t", "n"}, "", "") map({"t", "n"}, "", "") map({"t", "n"}, "", "") map({"i", "n"}, "", "") map("n", '', 'noh') map("t", "", "") map("v", "J", ":m '>+1gv=gv") map("v", "K", ":m '<-2gv=gv") map("v", "", "" , ">gv") map("n", "gd", ":lua vim.lsp.buf.definition()") map("n", "p", ":b#") map("n", "e", ":Ex") map("n", "c", ":bd") map("n", "1", ":vsplit | vertical resize 95 | terminala") map("n", "2", ":split | horizontal resize 25 | terminala") require("plugins")