summaryrefslogtreecommitdiff
path: root/fnl/config/autocmd.fnl
diff options
context:
space:
mode:
Diffstat (limited to 'fnl/config/autocmd.fnl')
-rw-r--r--fnl/config/autocmd.fnl32
1 files changed, 32 insertions, 0 deletions
diff --git a/fnl/config/autocmd.fnl b/fnl/config/autocmd.fnl
new file mode 100644
index 0000000..628a670
--- /dev/null
+++ b/fnl/config/autocmd.fnl
@@ -0,0 +1,32 @@
+;; A customizable greeter.
+(module config.autocmd {autoload {nvim aniseed.nvim util util}})
+
+(defn autocmd [group cmds] (nvim.command (.. "augroup " group))
+ (nvim.command :autocmd!)
+ (each [_ cmd (ipairs cmds)]
+ (nvim.command (.. "autocmd " cmd))) (nvim.command "augroup end"))
+
+(def- general-settings ["FileType qf,help,man,lspinfo nnoremap <silent> <buffer> q :close<CR>"
+ "TextYankPost * silent!lua require('vim.highlight').on_yank({higroup = 'Search', timeout = 200})"
+ "BufWinEnter * :set formatoptions-=cro"
+ "FileType qf set nobuflisted"])
+
+(def- git ["FileType gitcommit setlocal wrap"
+ "FileType gitcommit setlocal spell"])
+
+(def- markdown ["FileType markdown setlocal wrap"
+ "FileType markdown setlocal spell"])
+
+(def- auto-resize ["VimResized * tabdo wincmd ="])
+
+(def- alpha
+ ["User AlphaReady set showtabline=0 | autocmd BufUnload <buffer> set showtabline=2"])
+
+(def- packer ["BufWritePost plugins.lua source <afile> | PackerSync"])
+
+(autocmd :_general_settings general-settings)
+(autocmd :_git git)
+(autocmd :_markdown markdown)
+(autocmd :_auto_resize auto-resize)
+(autocmd :_alpha alpha)
+(autocmd :packer_user_config packer)