137 lines
5.5 KiB
Lua
137 lines
5.5 KiB
Lua
--[[
|
||
|
||
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣴⣾⣷⣦⣄⡀
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣴⣾⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣄⡀
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣴⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣄⡀
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡀⠚⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠗⢀
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣤⣄⡉⠓⠦⣌⡙⠻⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠟⢋⣡⠴⠚⢉⣠⣤⣀
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣤⣶⣿⣿⣿⣿⣿⣷⣦⣄⡉⠓⠦⣌⡙⠻⢿⣿⣿⣿⣿⣿⣿⡿⠟⢋⣡⠴⠚⢉⣠⣴⣾⣿⣿⣿⣿⣿⣶⣤
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠐⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣄⡉⠓⠦⣌⡙⠻⠟⢋⣡⠴⠚⢉⣠⣴⣾⣿⣿⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⠂
|
||
⠀⠀⠀⠀⢀⣠⣴⣆⡈⠻⢿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣄⡉⠃⠘⢉⣠⣴⣾⣿⣿⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⡿⠟⢁⣰⣦⣄⡀
|
||
⠀⠀⠐⠾⣿⣿⣿⣿⣿⣷⣦⣌⡙⠻⢿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣿⣿⣷⣾⣿⣿⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⡿⠟⢋⣡⣴⣾⣿⣿⣿⣿⣿⠷⠂
|
||
⠀⢸⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣌⡙⠻⢿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⡿⠟⢋⣡⣴⣾⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⡇
|
||
⠀⢸⣿⣿⣿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣌⡙⠻⢿⣿⣷⣦⣄⡉⠛⠿⠿⠛⢉⣠⣴⣾⣿⡿⠟⢋⣡⣴⣾⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⣿⣿⣿⡇
|
||
⠀⠀⠉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣌⡙⠻⢿⣿⣷⡆⢰⣾⣿⡿⠟⢋⣡⣴⣾⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⣿⣿⣿⣿⠿⠛⠉
|
||
⠀⠀⠀⠀⠀⠀⠉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣌⡙⠃⠘⢋⣡⣴⣾⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⣿⣿⣿⣿⠿⠛⠉
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⣿⣷⣾⣿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⣿⣿⣿⣿⠿⠛⠉
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣄⡉⠛⠿⣿⣿⣿⣿⠿⠛⢉⣠⣴⣾⣿⣿⣿⣿⣿⠿⠛⠉
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠛⠿⣿⣿⣿⣿⣿⣷⣦⣄⡉⢉⣠⣴⣾⣿⣿⣿⣿⣿⠿⠛⠉
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠛⠿⣿⣿⣿⣿⡇⢸⣿⣿⣿⣿⠿⠛⠉
|
||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠛⠿⡇⢸⠿⠛⠉
|
||
|
||
__ _ _
|
||
/ _|___ ___| |_ __ _ ___| | __
|
||
| ||_ /____/ __| __/ _` |/ __| |/ /
|
||
| _/ /_____\__ \ || (_| | (__| <
|
||
|_|/___| |___/\__\__,_|\___|_|\_\
|
||
|
||
Neovim v0.12 configuration
|
||
(C) Frank Zechert 2026
|
||
]]
|
||
|
||
-- UI settings
|
||
|
||
vim.opt.background = vim.g.ui.background
|
||
-- Colored columns and rows
|
||
vim.opt.colorcolumn = "+1,+2"
|
||
vim.opt.textwidth = 120
|
||
vim.opt.cursorcolumn = true
|
||
vim.opt.cursorline = true
|
||
vim.opt.cursorlineopt = "both" -- cursor line is displayed in line and in number
|
||
vim.opt.signcolumn = "yes"
|
||
vim.opt.termguicolors = true
|
||
-- Linebreak behaviour and scroll offset
|
||
vim.opt.linebreak = true -- visually line break at word boundary
|
||
vim.opt.showbreak = vim.g.ui.linebreak -- show line break indicator
|
||
vim.opt.scrolloff = 5
|
||
vim.opt.sidescrolloff = 3
|
||
vim.opt.wrap = false -- by default, do not wrap long lines
|
||
vim.opt.wrapmargin = 3
|
||
-- Show special characters
|
||
vim.opt.list = true
|
||
vim.opt.listchars = vim.g.ui.listchars
|
||
-- show line numbers
|
||
vim.opt.number = true
|
||
vim.opt.relativenumber = true
|
||
vim.opt.numberwidth = 4
|
||
-- border settings
|
||
vim.opt.winborder = vim.g.ui.windowborder
|
||
vim.opt.pumborder = vim.g.ui.popupborder
|
||
-- window split behaviour
|
||
vim.opt.splitbelow = true
|
||
vim.opt.splitright = true
|
||
-- hide mode, displayed in lualine
|
||
-- vim.opt.showmode = false
|
||
vim.opt.shortmess:append("S")
|
||
-- enable visual bell
|
||
vim.opt.visualbell = true
|
||
|
||
|
||
-- Editing settings
|
||
|
||
vim.opt.autoindent = true
|
||
vim.opt.backspace = { "indent", "eol", "start" }
|
||
vim.opt.preserveindent = true
|
||
vim.opt.smartindent = true
|
||
vim.opt.breakindent = true
|
||
vim.opt.breakindentopt:append({ min = 20, shift = -2, sbr = ture, list = -1 })
|
||
-- tab settings
|
||
vim.opt.expandtab = false
|
||
vim.opt.shiftround = true
|
||
vim.opt.shiftwidth = 0
|
||
vim.opt.tabstop = 4
|
||
vim.opt.softtabstop = -1
|
||
vim.opt.smarttab = true
|
||
-- matching pairs of symbols
|
||
vim.opt.matchpairs:append({ "<:>" })
|
||
|
||
|
||
-- Search settings
|
||
|
||
vim.opt.hlsearch = true
|
||
vim.opt.ignorecase = true
|
||
vim.opt.inccommand = split
|
||
vim.opt.incsearch = true
|
||
vim.opt.smartcase = true
|
||
|
||
|
||
-- Files settings
|
||
|
||
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 settings
|
||
|
||
vim.opt.updatetime = 1000
|
||
vim.opt.timeoutlen = 300
|
||
|
||
|
||
-- Mouse and Clipboard settings
|
||
|
||
vim.opt.mouse = "a"
|
||
vim.schedule(function() vim.opt.clipboard = "unnamedplus" end)
|
||
|
||
|
||
-- Folding settings
|
||
|
||
vim.opt.foldcolumn = "auto"
|
||
vim.opt.foldmethod = "expr"
|
||
vim.opt.foldexpr = "v:lua.vim.treesitter.foldexpr()"
|
||
vim.opt.foldlevel = 10 -- keep this many levels of folds open by default
|
||
|
||
|
||
-- Autocomplete settings
|
||
|
||
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
|