48 lines
1.5 KiB
Lua
48 lines
1.5 KiB
Lua
-- Options are automatically loaded before lazy.nvim startup
|
|
-- Add any additional options here
|
|
|
|
local opt = vim.opt
|
|
|
|
-- General
|
|
opt.clipboard = "unnamedplus" -- Sync with system clipboard
|
|
opt.confirm = true -- Confirm before closing unsaved buffer
|
|
opt.cursorline = true -- Highlight current line
|
|
opt.mouse = "a" -- Enable mouse
|
|
opt.number = true -- Show line numbers
|
|
opt.relativenumber = true -- Relative line numbers
|
|
opt.signcolumn = "yes" -- Always show sign column
|
|
opt.termguicolors = true -- True color support
|
|
opt.wrap = false -- Disable line wrap
|
|
|
|
-- Indentation
|
|
opt.expandtab = true -- Use spaces instead of tabs
|
|
opt.shiftwidth = 2 -- Size of indent
|
|
opt.tabstop = 2 -- Number of spaces tabs count for
|
|
opt.smartindent = true -- Smart indentation
|
|
|
|
-- Search
|
|
opt.ignorecase = true -- Ignore case
|
|
opt.smartcase = true -- Don't ignore case with capitals
|
|
opt.hlsearch = true -- Highlight search results
|
|
opt.incsearch = true -- Show search results as you type
|
|
|
|
-- Split behavior
|
|
opt.splitbelow = true -- Put new windows below current
|
|
opt.splitright = true -- Put new windows right of current
|
|
|
|
-- Undo
|
|
opt.undofile = true -- Persistent undo
|
|
opt.undolevels = 10000 -- Maximum undo levels
|
|
|
|
-- Performance
|
|
opt.updatetime = 200 -- Faster completion
|
|
opt.timeoutlen = 300 -- Faster key sequence completion
|
|
|
|
-- Completion
|
|
opt.completeopt = "menu,menuone,noselect"
|
|
|
|
-- Folding (using treesitter)
|
|
opt.foldmethod = "expr"
|
|
opt.foldexpr = "nvim_treesitter#foldexpr()"
|
|
opt.foldlevel = 99 -- Start with all folds open
|