initial commit for native-only neovim plugin configuration
This commit is contained in:
+64
-43
@@ -1,5 +1,6 @@
|
||||
--[[
|
||||
|
||||
|
||||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣴⣾⣷⣦⣄⡀
|
||||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣴⣾⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣄⡀
|
||||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣴⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣄⡀
|
||||
@@ -25,65 +26,78 @@
|
||||
| _/ /_____\__ \ || (_| | (__| <
|
||||
|_|/___| |___/\__\__,_|\___|_|\_\
|
||||
|
||||
Neovim 0.12 configuration
|
||||
(c) Frank Zechert 2026
|
||||
Neovim v0.12 configuration
|
||||
(C) Frank Zechert 2026
|
||||
]]
|
||||
|
||||
-- UI
|
||||
-- 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"
|
||||
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.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.showbreak = vim.g.ui.linebreak
|
||||
vim.opt.signcolumn = "yes"
|
||||
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
|
||||
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
|
||||
-- hide mode, displayed in lualine
|
||||
-- vim.opt.showmode = false
|
||||
vim.opt.shortmess:append("S")
|
||||
-- enable visual bell
|
||||
vim.opt.visualbell = true
|
||||
|
||||
-- Editing
|
||||
|
||||
-- Editing settings
|
||||
|
||||
vim.opt.autoindent = true
|
||||
vim.opt.backspace = {"indent", "eol", "start"}
|
||||
vim.opt.expandtab = false
|
||||
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
|
||||
vim.opt.smartindent = true
|
||||
vim.opt.breakindent = true
|
||||
vim.opt.breakindentopt:append({ min = 20, shift = -2, sbr = true, list = -1 })
|
||||
vim.opt.matchpairs:append({"<:>"})
|
||||
-- matching pairs of symbols
|
||||
vim.opt.matchpairs:append({ "<:>" })
|
||||
|
||||
|
||||
-- Search settings
|
||||
|
||||
-- Search
|
||||
vim.opt.hlsearch = true
|
||||
vim.opt.ignorecase = true
|
||||
vim.opt.inccommand = "split"
|
||||
vim.opt.inccommand = split
|
||||
vim.opt.incsearch = true
|
||||
vim.opt.smartcase = true
|
||||
|
||||
-- Files
|
||||
|
||||
-- Files settings
|
||||
|
||||
vim.opt.backup = false
|
||||
vim.opt.writebackup = false
|
||||
vim.opt.fileformat = "unix"
|
||||
@@ -91,25 +105,32 @@ vim.opt.fileencoding = "utf-8"
|
||||
vim.opt.undofile = true
|
||||
vim.opt.swapfile = true
|
||||
|
||||
-- Performance
|
||||
vim.opt.updatetime = 1000
|
||||
vim.opt.timeoutlen = 600
|
||||
|
||||
-- Mouse & Clipboard
|
||||
-- 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
|
||||
|
||||
-- Folding settings
|
||||
|
||||
vim.opt.foldcolumn = "auto"
|
||||
vim.opt.foldmethod = "expr"
|
||||
vim.opt.foldexpr = "v:lua.vim.treesitter.foldexpr()"
|
||||
vim.opt.foldlevel = 99
|
||||
vim.opt.foldlevel = 10 -- keep this many levels of folds open by default
|
||||
|
||||
|
||||
-- Autocomplete settings
|
||||
|
||||
-- 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.completeopt = { "menu", "menuone", "noinsert", "popup", "preview" }
|
||||
vim.opt.completeitemalign = { "abbr", "kind", "menu" }
|
||||
vim.opt.completetimeout = 0
|
||||
|
||||
|
||||
Reference in New Issue
Block a user