diff options
Diffstat (limited to 'fnl')
| -rw-r--r-- | fnl/config/autocmd.fnl | 87 | 
1 files changed, 38 insertions, 49 deletions
diff --git a/fnl/config/autocmd.fnl b/fnl/config/autocmd.fnl index ecec60a..e168bd5 100644 --- a/fnl/config/autocmd.fnl +++ b/fnl/config/autocmd.fnl @@ -1,50 +1,39 @@  ;; A customizable greeter. -(module config.autocmd {autoload {util util}}) - -(util.autocmd :FileType {:pattern [:qf :help :man :lspinfo] -                         :command "nnoremap <silent> <buffer> q :close<CR>" -                         :group :_general_settings}) - -(util.autocmd :TextYankPost -              {:pattern ["*"] -               :callback (lambda [] -                           (vim.highlight.on_yank {:timeout 200})) -               :group :_general_settings}) - -(util.autocmd :BufWinEnter -              {:pattern ["*"] -               :command ":set formatoptions-=cro" -               :group :_general_settings}) - -(util.autocmd :FileType {:pattern [:qf] -                         :command "set nobuflisted" -                         :group :_general_settings}) - -(util.autocmd :FileType {:pattern [:gitcommit] -                         :command "setlocal wrap" -                         :group :_git}) - -(util.autocmd :FileType {:pattern [:gitcommit] -                         :command "setlocal spell" -                         :group :_git}) - -(util.autocmd :FileType {:pattern [:markdown] -                         :command "setlocal wrap" -                         :group :_markdown}) - -(util.autocmd :FileType {:pattern [:markdown] -                         :command "setlocal spell" -                         :group :_markdown}) - -(util.autocmd :VimResized {:pattern ["*"] -                           :command "tabdo wincmd =" -                           :group :_auto_resize}) - -(util.autocmd :User {:pattern [:AlphaReady] -                     :command "set showtabline=0 | autocmd BufUnload <buffer> set showtabline=2" -                     :group :_alpha}) - -(util.autocmd :BufWritePost -              {:pattern [:plugins.fnl] -               :command "source <afile> | PackerSync" -               :group :packer_user_config}) +(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)  |