Initial neovim config

Lazy.nvim plugin manager, LSP (rust-analyzer, clangd, ts_ls, zls),
treesitter, telescope, bufferline, neo-tree, gitsigns, lazygit,
alabaster theme, persistence sessions, nvim-cmp, lualine, which-key.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Mikhail Kilin
2026-02-23 23:40:37 +03:00
commit 7213bec4dc
16 changed files with 478 additions and 0 deletions

49
lua/config/options.lua Normal file
View File

@@ -0,0 +1,49 @@
local opt = vim.opt
-- Line numbers
opt.number = true
opt.relativenumber = true
-- Tabs & indentation
opt.tabstop = 4
opt.shiftwidth = 4
opt.expandtab = true
opt.smartindent = true
-- Search
opt.ignorecase = true
opt.smartcase = true
opt.hlsearch = true
opt.incsearch = true
-- Appearance
opt.termguicolors = true
opt.signcolumn = "yes"
opt.cursorline = true
opt.scrolloff = 8
opt.sidescrolloff = 8
-- Line wrapping
opt.wrap = false
-- Clipboard
opt.clipboard = "unnamedplus"
-- Split behavior
opt.splitright = true
opt.splitbelow = true
-- Undo / swap
opt.undofile = true
opt.swapfile = false
opt.backup = false
-- Performance
opt.updatetime = 250
opt.timeoutlen = 300
-- Completion menu
opt.completeopt = "menuone,noselect"
-- File encoding
opt.fileencoding = "utf-8"