2021-06-26 02:36:26 +00:00
|
|
|
local opt = vim.opt
|
2021-07-14 05:24:09 +00:00
|
|
|
local g = vim.g
|
2021-06-26 02:36:26 +00:00
|
|
|
|
2021-07-19 01:10:38 +00:00
|
|
|
-- Turn these off at startup, will be enabled later just before loading the theme
|
|
|
|
vim.cmd([[
|
|
|
|
syntax off
|
|
|
|
filetype off
|
|
|
|
filetype plugin indent off
|
|
|
|
]])
|
|
|
|
|
2021-06-26 02:36:26 +00:00
|
|
|
opt.ruler = false
|
|
|
|
opt.hidden = true
|
|
|
|
opt.ignorecase = true
|
|
|
|
opt.splitbelow = true
|
|
|
|
opt.splitright = true
|
|
|
|
opt.termguicolors = true
|
|
|
|
opt.cul = true
|
|
|
|
opt.mouse = "a"
|
|
|
|
opt.signcolumn = "yes"
|
|
|
|
opt.cmdheight = 1
|
|
|
|
opt.updatetime = 250 -- update interval for gitsigns
|
2021-07-13 10:46:57 +00:00
|
|
|
opt.timeoutlen = 400
|
2021-06-26 02:36:26 +00:00
|
|
|
opt.clipboard = "unnamedplus"
|
2021-03-13 10:51:52 +00:00
|
|
|
|
2021-07-14 04:57:33 +00:00
|
|
|
-- disable nvim intro
|
|
|
|
opt.shortmess:append("sI")
|
|
|
|
|
|
|
|
-- disable tilde on end of buffer: https://github.com/ neovim/neovim/pull/8546#issuecomment-643643758
|
2021-07-19 00:58:28 +00:00
|
|
|
vim.cmd("let &fcs='eob: '")
|
2021-07-14 04:57:33 +00:00
|
|
|
|
2021-06-16 00:50:47 +00:00
|
|
|
-- Numbers
|
2021-06-26 02:36:26 +00:00
|
|
|
opt.number = true
|
|
|
|
opt.numberwidth = 2
|
2021-07-04 09:08:08 +00:00
|
|
|
-- opt.relativenumber = true
|
2021-06-16 00:50:47 +00:00
|
|
|
|
2021-07-16 17:52:36 +00:00
|
|
|
-- Indenline
|
2021-06-26 02:36:26 +00:00
|
|
|
opt.expandtab = true
|
|
|
|
opt.shiftwidth = 2
|
|
|
|
opt.smartindent = true
|
2021-06-15 16:14:11 +00:00
|
|
|
|
2021-07-17 09:04:36 +00:00
|
|
|
-- go to previous/next line with h,l,left arrow and right arrow
|
|
|
|
-- when cursor reaches end/beginning of line
|
|
|
|
opt.whichwrap:append("<>hl")
|
|
|
|
|
2021-07-14 05:24:09 +00:00
|
|
|
g.mapleader = " "
|
|
|
|
g.auto_save = false
|
|
|
|
|
2021-06-26 02:08:44 +00:00
|
|
|
-- disable builtin vim plugins
|
2021-07-20 18:19:31 +00:00
|
|
|
local disabled_built_ins = {
|
|
|
|
"netrw",
|
|
|
|
"netrwPlugin",
|
|
|
|
"netrwSettings",
|
|
|
|
"netrwFileHandlers",
|
|
|
|
"gzip",
|
|
|
|
"zip",
|
|
|
|
"zipPlugin",
|
|
|
|
"tar",
|
|
|
|
"tarPlugin",
|
|
|
|
"getscript",
|
|
|
|
"getscriptPlugin",
|
|
|
|
"vimball",
|
|
|
|
"vimballPlugin",
|
|
|
|
"2html_plugin",
|
|
|
|
"logipat",
|
|
|
|
"rrhelper",
|
|
|
|
"spellfile_plugin"
|
|
|
|
}
|
|
|
|
|
|
|
|
for _, plugin in pairs(disabled_built_ins) do
|
|
|
|
vim.g["loaded_" .. plugin] = 1
|
|
|
|
end
|
2021-06-26 02:08:44 +00:00
|
|
|
|
2021-03-08 05:24:53 +00:00
|
|
|
local M = {}
|
|
|
|
|
|
|
|
function M.is_buffer_empty()
|
2021-03-13 01:23:02 +00:00
|
|
|
-- Check whether the current buffer is empty
|
|
|
|
return vim.fn.empty(vim.fn.expand("%:t")) == 1
|
2021-03-08 05:24:53 +00:00
|
|
|
end
|
|
|
|
|
|
|
|
function M.has_width_gt(cols)
|
2021-03-13 01:23:02 +00:00
|
|
|
-- Check if the windows width is greater than a given number of columns
|
|
|
|
return vim.fn.winwidth(0) / 2 > cols
|
2021-03-08 05:24:53 +00:00
|
|
|
end
|
2021-06-26 02:08:44 +00:00
|
|
|
|
2021-06-03 18:49:52 +00:00
|
|
|
-- file extension specific tabbing
|
2021-06-26 02:08:44 +00:00
|
|
|
-- vim.cmd([[autocmd Filetype python setlocal expandtab tabstop=4 shiftwidth=4 softtabstop=4]])
|
2021-06-26 12:50:25 +00:00
|
|
|
|
2021-03-08 05:24:53 +00:00
|
|
|
return M
|