48 lines
1.5 KiB
Lua
48 lines
1.5 KiB
Lua
local M = {}
|
|
|
|
function M.setup()
|
|
-- Disable filetype.vim
|
|
vim.g.do_filetype_lua = true
|
|
vim.g.did_load_filetypes = false
|
|
|
|
-- Basic options
|
|
vim.opt.joinspaces = false -- No double spaces with join
|
|
vim.opt.list = true -- Show some invisible characters
|
|
vim.opt.cmdheight = 0 -- Hide command line when it's not getting used
|
|
|
|
-- tcqj are there by default, and "r" automatically continues comments on enter
|
|
vim.opt.formatoptions = "tcqjr"
|
|
|
|
-- Line numbers
|
|
vim.opt.number = true -- Show line numbers
|
|
vim.opt.relativenumber = true -- Relative line numbers
|
|
|
|
vim.opt.expandtab = true -- Use spaces for the tab char
|
|
vim.opt.shiftwidth = 2 -- Size of an indent
|
|
vim.opt.shiftround = true -- When using < or >, rounds to closest multiple of shiftwidth
|
|
vim.opt.smartindent = true -- Insert indents automatically
|
|
|
|
vim.opt.scrolloff = 4 -- Starts scrolling 4 lines from the edge of the screen
|
|
vim.opt.termguicolors = true -- True color support
|
|
|
|
vim.opt.ignorecase = true -- Ignore case
|
|
vim.opt.smartcase = true -- Do not ignore case with capitals
|
|
|
|
vim.opt.splitbelow = true -- Put new windows below current
|
|
vim.opt.splitright = true -- Put new windows right of current
|
|
|
|
vim.opt.wrap = false -- Disable line wrap (by default)
|
|
vim.opt.wildmode = { "list", "longest" } -- Command-line completion mode
|
|
vim.opt.completeopt = { "menu", "menuone", "noselect" }
|
|
|
|
vim.opt.undofile = true -- persist undos!!
|
|
|
|
-- Set leader
|
|
vim.g.mapleader = " "
|
|
|
|
-- Folding
|
|
vim.opt.foldmethod = "marker"
|
|
end
|
|
|
|
return M
|