dotfiles/nvim/lua/config/options.lua

52 lines
1.3 KiB
Lua
Raw Normal View History

2024-01-21 23:32:15 +01:00
local utils = require 'config.utils'
local autocmd = utils.autocmd
2023-08-19 20:39:11 +02:00
local g, opt = vim.g, vim.opt
2023-07-10 13:46:48 +02:00
2023-07-25 17:53:51 +02:00
2023-08-19 20:39:11 +02:00
-- Providers
g.loaded_python3_provider = 0
g.loaded_ruby_provider = 0
g.loaded_perl_provider = 0
g.loaded_node_provider = 0
2023-08-19 13:00:45 +02:00
-- General
2024-01-21 23:32:15 +01:00
opt.clipboard = 'unnamedplus' -- Use system clipboard
2023-08-19 13:00:45 +02:00
opt.swapfile = false -- Don't use swapfiles
2024-01-21 23:32:15 +01:00
opt.completeopt = 'menuone,noinsert,noselect' -- Completion behavior
2023-09-26 21:19:51 +02:00
opt.termguicolors = true
2023-07-10 13:46:48 +02:00
2023-08-19 13:00:45 +02:00
-- Indentation
opt.tabstop = 2 -- 1 tab = 2 spaces
opt.smartindent = true -- Autoindent new lines
opt.shiftwidth = 2 -- Shift 2 spaces when tab
opt.expandtab = true -- Use spaces instead of tabs
-- Visual
opt.number = true -- Show current line number
opt.relativenumber = true -- Show relative line numbers
2024-01-21 23:32:15 +01:00
opt.colorcolumn = '80' -- Show soft char limit
2023-08-19 13:00:45 +02:00
opt.list = true -- Show punctuation
opt.listchars = { -- Punctuation marks
2024-01-21 23:32:15 +01:00
trail = '·',
nbsp = '',
tab = '',
leadmultispace = '',
2023-07-23 01:34:24 +02:00
}
-- Trailing whitespace
2024-01-21 23:32:15 +01:00
autocmd 'BufWritePre' {} (function()
if vim.bo.filetype == 'markdown' then return end
vim.cmd [[%s/\s\+$//e]]
2023-09-26 21:19:51 +02:00
end)
2023-07-23 01:34:24 +02:00
2023-08-19 13:00:45 +02:00
-- Additional filetypes
2023-11-15 21:39:37 +01:00
vim.filetype.add {
2023-07-10 13:46:48 +02:00
extension = {
mdx = 'mdx',
typ = 'typst',
purs = 'purescript',
nu = 'nu',
2023-07-10 13:46:48 +02:00
}
2023-11-15 21:39:37 +01:00
}