116 lines
5.1 KiB
Lua
116 lines
5.1 KiB
Lua
--[[
|
||
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣴⣾⣷⣦⣄⡀
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣴⣾⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣄⡀
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣴⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣄⡀
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡀⠚⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠗⢀
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣤⣄⡉⠓⠦⣌⡙⠻⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠟⢋⣡⠴⠚⢉⣠⣤⣀
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣤⣶⣿⣿⣿⣿⣿⣷⣦⣄⡉⠓⠦⣌⡙⠻⢿⣿⣿⣿⣿⣿⣿⡿⠟⢋⣡⠴⠚⢉⣠⣴⣾⣿⣿⣿⣿⣿⣶⣤
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠐⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣄⡉⠓⠦⣌⡙⠻⠟⢋⣡⠴⠚⢉⣠⣴⣾⣿⣿⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⠂
|
||
⠀⠀⠀⠀⢀⣠⣴⣆⡈⠻⢿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣄⡉⠃⠘⢉⣠⣴⣾⣿⣿⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⡿⠟⢁⣰⣦⣄⡀
|
||
⠀⠀⠐⠾⣿⣿⣿⣿⣿⣷⣦⣌⡙⠻⢿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣿⣿⣷⣾⣿⣿⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⡿⠟⢋⣡⣴⣾⣿⣿⣿⣿⣿⠷⠂
|
||
⠀⢸⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣌⡙⠻⢿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⡿⠟⢋⣡⣴⣾⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⡇
|
||
⠀⢸⣿⣿⣿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣌⡙⠻⢿⣿⣷⣦⣄⡉⠛⠿⠿⠛⢉⣠⣴⣾⣿⡿⠟⢋⣡⣴⣾⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⣿⣿⣿⡇
|
||
⠀⠀⠉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣌⡙⠻⢿⣿⣷⡆⢰⣾⣿⡿⠟⢋⣡⣴⣾⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⣿⣿⣿⣿⠿⠛⠉
|
||
⠀⠀⠀⠀⠀⠀⠉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣌⡙⠃⠘⢋⣡⣴⣾⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⣿⣿⣿⣿⠿⠛⠉
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣷⣾⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⣿⣿⣿⣿⠿⠛⠉
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⣿⣿⣿⣿⠿⠛⠉
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣄⡉⢉⣠⣴⣾⣿⣿⣿⣿⣿⠿⠛⠉
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠛⠿⣿⣿⣿⣿⡇⢸⣿⣿⣿⣿⠿⠛⠉
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠛⠿⡇⢸⠿⠛⠉
|
||
|
||
__ _ _
|
||
/ _|___ ___| |_ __ _ ___| | __
|
||
| ||_ /____/ __| __/ _` |/ __| |/ /
|
||
| _/ /_____\__ \ || (_| | (__| <
|
||
|_|/___| |___/\__\__,_|\___|_|\_\
|
||
|
||
Neovim 0.12 configuration
|
||
(c) Frank Zechert 2026
|
||
]]
|
||
|
||
-- UI
|
||
vim.opt.background = vim.g.ui.background
|
||
vim.opt.colorcolumn = "+1,+2"
|
||
vim.opt.cursorcolumn = true
|
||
vim.opt.cursorline = true
|
||
vim.opt.cursorlineopt = "both"
|
||
vim.opt.linebreak = true
|
||
vim.opt.list = true
|
||
vim.opt.listchars = vim.g.ui.listchars
|
||
vim.opt.number = true
|
||
vim.opt.numberwidth = 4
|
||
vim.opt.relativenumber = false
|
||
vim.opt.winborder = vim.g.ui.border
|
||
vim.opt.pumborder = vim.g.ui.border
|
||
vim.opt.scrolloff = 5
|
||
vim.opt.sidescrolloff = 3
|
||
vim.opt.showbreak = vim.g.ui.linebreak
|
||
vim.opt.signcolumn = "yes"
|
||
vim.opt.splitbelow = true
|
||
vim.opt.splitright = true
|
||
vim.opt.termguicolors = true
|
||
vim.opt.textwidth = 120
|
||
vim.opt.wrap = false
|
||
-- when no textwidth is specified, automatically add <EOL> at the end of a long line 3
|
||
-- characters before reaching the window edge. Will have no effect if textwidth is specified otherwise.
|
||
-- Set to 0 to disable.
|
||
vim.opt.wrapmargin = 3
|
||
-- hide mode and serch count (displayed in lualine instead)
|
||
vim.opt.showmode = false
|
||
vim.opt.shortmess:append("S")
|
||
vim.opt.visualbell = true
|
||
|
||
-- Editing
|
||
vim.opt.autoindent = true
|
||
vim.opt.backspace = {"indent", "eol", "start"}
|
||
vim.opt.expandtab = false
|
||
vim.opt.preserveindent = true
|
||
vim.opt.shiftround = true
|
||
vim.opt.shiftwidth = 0
|
||
vim.opt.tabstop = 4
|
||
vim.opt.softtabstop = -1
|
||
vim.opt.smarttab = true
|
||
vim.opt.smartindent = true
|
||
vim.opt.breakindent = true
|
||
vim.opt.breakindentopt:append({ min = 20, shift = -2, sbr = true, list = -1 })
|
||
vim.opt.matchpairs:append({"<:>"})
|
||
|
||
-- Search
|
||
vim.opt.hlsearch = true
|
||
vim.opt.ignorecase = true
|
||
vim.opt.inccommand = "split"
|
||
vim.opt.incsearch = true
|
||
vim.opt.smartcase = true
|
||
|
||
-- Files
|
||
vim.opt.backup = false
|
||
vim.opt.writebackup = false
|
||
vim.opt.fileformat = "unix"
|
||
vim.opt.fileencoding = "utf-8"
|
||
vim.opt.undofile = true
|
||
vim.opt.swapfile = true
|
||
|
||
-- Performance
|
||
vim.opt.updatetime = 1000
|
||
vim.opt.timeoutlen = 600
|
||
|
||
-- Mouse & Clipboard
|
||
vim.opt.mouse = "a"
|
||
vim.schedule(function() vim.opt.clipboard = "unnamedplus" end)
|
||
|
||
-- Folding
|
||
vim.opt.foldcolumn = "auto"
|
||
vim.opt.foldmethod = "expr"
|
||
vim.opt.foldexpr = "v:lua.vim.treesitter.foldexpr()"
|
||
vim.opt.foldlevel = 99
|
||
|
||
-- Autocompletion
|
||
vim.opt.autocomplete = false
|
||
vim.opt.autocompletedelay = 0
|
||
vim.opt.autocompletetimeout = 0
|
||
vim.opt.completeopt = {"menu", "menuone", "noinsert", "popup", "preview"}
|
||
vim.opt.completeitemalign = {"abbr", "kind", "menu"}
|
||
vim.opt.completetimeout = 0
|
||
|