2023-09-26 21:19:51 +02:00
|
|
|
local U = require("utility")
|
|
|
|
local autocmd = U.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
|
|
|
|
opt.clipboard = "unnamedplus" -- Use system clipboard
|
|
|
|
opt.swapfile = false -- Don't use swapfiles
|
2023-08-19 20:39:11 +02: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
|
|
|
|
opt.colorcolumn = "80" -- Show soft char limit
|
|
|
|
opt.list = true -- Show punctuation
|
|
|
|
opt.listchars = { -- Punctuation marks
|
2023-12-24 22:54:03 +01:00
|
|
|
trail = "·",
|
|
|
|
nbsp = "␣",
|
|
|
|
tab = "⇥ ",
|
|
|
|
leadmultispace = "│ ",
|
2023-07-23 01:34:24 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
-- Trailing whitespace
|
2023-09-26 21:19:51 +02:00
|
|
|
autocmd "BufWritePre" {} (function()
|
|
|
|
if vim.bo.filetype == "markdown" then return end
|
|
|
|
vim.cmd([[%s/\s\+$//e]])
|
|
|
|
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 = {
|
2023-11-15 21:39:37 +01:00
|
|
|
mdx = "mdx",
|
|
|
|
typ = "typst",
|
|
|
|
purs = "purescript",
|
2023-11-17 23:44:48 +01:00
|
|
|
nu = "nu"
|
2023-07-10 13:46:48 +02:00
|
|
|
}
|
2023-11-15 21:39:37 +01:00
|
|
|
}
|
2023-08-15 01:22:35 +02:00
|
|
|
|