neovim-confs/lua/misc-utils.lua

62 lines
1.4 KiB
Lua
Raw Normal View History

2021-03-13 02:23:02 +01:00
local scopes = {o = vim.o, b = vim.bo, w = vim.wo}
2021-03-07 15:22:30 +01:00
local function opt(scope, key, value)
2021-03-13 02:23:02 +01:00
scopes[scope][key] = value
if scope ~= "o" then
scopes["o"][key] = value
end
2021-03-07 15:22:30 +01:00
end
opt("o", "ruler", false)
2021-06-18 05:11:14 +02:00
opt("o", "showmode", false)
2021-03-13 02:23:02 +01:00
opt("o", "hidden", true)
opt("o", "ignorecase", true)
opt("o", "splitbelow", true)
opt("o", "splitright", true)
opt("o", "termguicolors", true)
2021-04-08 04:08:29 +02:00
opt("w", "cul", true)
2021-03-07 15:22:30 +01:00
2021-03-13 02:23:02 +01:00
opt("o", "mouse", "a")
2021-03-07 15:22:30 +01:00
2021-03-13 02:23:02 +01:00
opt("w", "signcolumn", "yes")
opt("o", "cmdheight", 1)
2021-03-13 11:51:52 +01:00
2021-04-08 04:08:29 +02:00
opt("o", "updatetime", 250) -- update interval for gitsigns
2021-03-13 02:23:02 +01:00
opt("o", "clipboard", "unnamedplus")
2021-05-12 19:23:35 +02:00
opt("o", "timeoutlen", 500)
2021-03-13 11:51:52 +01:00
-- Numbers
opt("w", "number", true)
opt("o", "numberwidth", 2)
-- opt("w", "relativenumber", true)
2021-03-13 11:51:52 +01:00
-- for indenline
2021-04-08 04:08:29 +02:00
opt("b", "expandtab", true)
opt("b", "shiftwidth", 2)
2021-06-15 18:14:11 +02:00
opt("b", "smartindent", true)
2021-06-26 04:08:44 +02:00
-- disable builtin vim plugins
vim.g.loaded_gzip = 0
vim.g.loaded_tar = 0
vim.g.loaded_tarPlugin = 0
vim.g.loaded_zipPlugin = 0
vim.g.loaded_netrw = 0
vim.g.loaded_netrwPlugin = 0
2021-03-08 06:24:53 +01:00
local M = {}
function M.is_buffer_empty()
2021-03-13 02:23:02 +01:00
-- Check whether the current buffer is empty
return vim.fn.empty(vim.fn.expand("%:t")) == 1
2021-03-08 06:24:53 +01:00
end
function M.has_width_gt(cols)
2021-03-13 02:23:02 +01:00
-- Check if the windows width is greater than a given number of columns
return vim.fn.winwidth(0) / 2 > cols
2021-03-08 06:24:53 +01:00
end
2021-06-26 04:08:44 +02:00
-- file extension specific tabbing
2021-06-26 04:08:44 +02:00
-- vim.cmd([[autocmd Filetype python setlocal expandtab tabstop=4 shiftwidth=4 softtabstop=4]])
2021-03-08 06:24:53 +01:00
return M