Files
neovim-configuration/lua/options.lua

71 lines
2.6 KiB
Lua

---------------------------------------------------
--
-- Some general setup taken from some tutorial
-- which I have forgotten
--
--------------------------------------------------
-- Hint: use `:h <option>` to figure out the meaning if needed
vim.opt.clipboard = 'unnamedplus' -- use system clipboard
vim.opt.completeopt = { 'menu', 'menuone', 'noselect' }
vim.opt.mouse = 'a' -- allow the mouse to be used in Nvim
-- Tab
vim.opt.tabstop = 2 -- number of visual spaces per TAB
vim.opt.softtabstop = 2 -- number of spaces in tab when editing
vim.opt.shiftwidth = 2 -- insert 4 spaces on a tab
vim.opt.expandtab = true -- tabs are spaces, mainly because of python and because it is consistent
-- UI config
vim.opt.number = true -- show absolute number
vim.opt.relativenumber = false -- add numbers to each line on the left side
vim.opt.cursorline = true -- highlight cursor line underneath the cursor horizontally
vim.opt.guicursor = "" .. -- cursor highlight group needs to be Cursor to have lunaperche have a proper light cursor
"n-v-c-sm:block-Cursor,i-ci-ve:ver25-Cursor,r-cr-o:hor20,t:block-blinkon500-blinkoff500-Cursor"
vim.opt.splitbelow = true -- open new vertical split bottom
vim.opt.splitright = true -- open new horizontal splits right
vim.opt.termguicolors = true -- enable 24-bit RGB color in the TUI
vim.opt.showmode = false -- we are experienced, wo don't need the "-- INSERT --" mode hint
vim.opt.showtabline = 0 -- never show top line with tabs, not used anyways
vim.opt.winborder = 'rounded' -- UI borders are rounded
-- Searching
vim.opt.incsearch = true -- search as characters are entered
vim.opt.hlsearch = true -- do not highlight matches
vim.opt.ignorecase = true -- ignore case in searches by default
vim.opt.smartcase = true -- but make it case sensitive if an uppercase is entered
--------------------------------------------------
--
-- General text editing and cursor movements
--
--------------------------------------------------
-- Wrapping movements and long lines
vim.opt.whichwrap = "b,s,<,>,[,]" -- wrap backspace, space and left-right cursor keys
vim.opt.wrap = false
-- Spelling
vim.opt.spell = true
vim.opt.spelllang = "de,en"
--------------------------------------------------
--
-- calendar.vim options
--
--------------------------------------------------
-- :Calendar -split=horizontal -position=below -height=12
vim.g.calendar_first_day = "monday"
vim.g.calendar_view = "year"
vim.g.calendar_week_number = true
--------------------------------------------------
--
-- Other options
--
--------------------------------------------------
vim.opt.shortmess = vim.opt.shortmess + 'I'