autocommands
This commit is contained in:
5
init.lua
5
init.lua
@ -52,9 +52,8 @@ utils.opt('o', 'list', true)
|
|||||||
utils.opt('o', 'updatetime', 300)
|
utils.opt('o', 'updatetime', 300)
|
||||||
utils.opt('o', 'wrap', true)
|
utils.opt('o', 'wrap', true)
|
||||||
|
|
||||||
-- Highlight on yank
|
-------------------- AUTOCOMMANDS --------------------------
|
||||||
vim.cmd 'au TextYankPost * lua vim.highlight.on_yank {on_visual = false}'
|
require("autocommands")
|
||||||
|
|
||||||
-------------------- MAPPINGS ------------------------------
|
-------------------- MAPPINGS ------------------------------
|
||||||
-- <Tab> to navigate the completion menu
|
-- <Tab> to navigate the completion menu
|
||||||
utils.map('i', '<S-Tab>', 'pumvisible() ? "\\<C-p>" : "\\<Tab>"', {expr = true})
|
utils.map('i', '<S-Tab>', 'pumvisible() ? "\\<C-p>" : "\\<Tab>"', {expr = true})
|
||||||
|
48
lua/autocommands.lua
Normal file
48
lua/autocommands.lua
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
function nvim_create_augroups(definitions)
|
||||||
|
for group_name, definition in pairs(definitions) do
|
||||||
|
vim.cmd('augroup ' .. group_name)
|
||||||
|
vim.cmd('autocmd!')
|
||||||
|
for _, def in ipairs(definition) do
|
||||||
|
local command = table.concat(vim.tbl_flatten{'autocmd', def}, ' ')
|
||||||
|
vim.cmd(command)
|
||||||
|
end
|
||||||
|
vim.cmd('augroup END')
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
local autocmds = {
|
||||||
|
change_header = {
|
||||||
|
{'BufWritePre', '*', 'lua changeheader()'}
|
||||||
|
};
|
||||||
|
packer = {
|
||||||
|
{ 'BufWritePost', 'plugins.lua', 'PackerCompile' };
|
||||||
|
};
|
||||||
|
restore_cursor = {
|
||||||
|
{ 'BufRead', '*', [[call setpos(".", getpos("'\""))]] };
|
||||||
|
};
|
||||||
|
save_shada = {
|
||||||
|
{'VimLeave', '*', 'wshada!'};
|
||||||
|
};
|
||||||
|
resize_windows_proportionally = {
|
||||||
|
{ 'VimResized', '*', ':wincmd =' };
|
||||||
|
};
|
||||||
|
toggle_search_highlighting = {
|
||||||
|
{ 'InsertEnter', '*', 'setlocal nohlsearch' };
|
||||||
|
};
|
||||||
|
lua_highlight = {
|
||||||
|
{ 'TextYankPost', '*', [[silent! lua vim.highlight.on_yank() {higroup='IncSearch', timeout=400}]] };
|
||||||
|
};
|
||||||
|
ansi_esc_log = {
|
||||||
|
{ 'BufEnter', '*.log', ':AnsiEsc' };
|
||||||
|
};
|
||||||
|
file_type = {
|
||||||
|
{'BufRead,BufNewFile', '*.simvis', 'set filetype=xml'};
|
||||||
|
{'BufRead,BufNewFile', '*.simcfg,*.simcon,*.simudex', 'set filetype=cfg'}
|
||||||
|
{'BufRead,BufNewFile', 'Jenkinsfile*', 'set filetype=groovy'}
|
||||||
|
{'BufRead,BufNewFile', '*.manifest', 'set filetype=xml'}
|
||||||
|
{'BufRead,BufNewFile', 'SConstruct,SConscript', 'set filetype=python'}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
nvim_create_augroups(autocmds)
|
||||||
|
|
Reference in New Issue
Block a user