summaryrefslogtreecommitdiff
path: root/fnl/config/autocmd.fnl
blob: 63b84744ae65f9b536757970e0074abb97e58473 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
;; Autocommands for nvim.
(module config.autocmd {autoload {nvim aniseed.nvim
                                  env aniseed.env
                                  a aniseed.core
                                  : lazy}})

(defn create-autocmd [event opts] (nvim.create_autocmd event opts))

(create-autocmd :FileType
                {:pattern [:qf :help :man :lspinfo]
                 :command "nnoremap <silent> <buffer> q :close<CR>"})

(create-autocmd :TextYankPost
                {:callback (lambda []
                             (vim.highlight.on_yank {:higroup :Visual
                                                     :timeout 200}))})

(create-autocmd :FileType {:pattern :lir
                           :callback (fn []
                                       (tset vim.opt_local :number false)
                                       (tset vim.opt_local :relativenumber
                                             false))})

(create-autocmd :BufWinEnter {:command "setlocal formatoptions-=cro"})

(create-autocmd :FileType {:pattern :qf :command "set nobuflisted"})

(create-autocmd :FileType {:pattern [:gitcommit :markdown]
                           :command "setlocal wrap"})

(create-autocmd :FileType
                {:pattern [:NeogitStatus
                           :NeogitCommitMessage
                           :NeogitNotification
                           :NeogitCommitView]
                 :command "setlocal spell!"})

(create-autocmd :TermOpen
                {:pattern ["term://*toggleterm#*"] :command "setlocal spell!"})

(create-autocmd :VimResized {:command "tabdo wincmd ="})

(create-autocmd :BufWritePost
                {:pattern :*.fnl
                 :callback (lambda []
                             (env.init nvim.g.aniseed#env))})

(create-autocmd :BufWritePost
                {:pattern :plugins.fnl
                 :callback (lambda []
                             (env.init nvim.g.aniseed#env)
                             (lazy.sync))})

(create-autocmd :FileType
                {:pattern :netrw
                 :command "nmap <silent> <buffer> h -^ | nmap <silent> <buffer> l <cr>"})