summaryrefslogtreecommitdiff
path: root/fnl/conf/events.fnl
blob: 883611d502f52f984b3eb011f944cc949ac319e1 (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
(vim.api.nvim_create_augroup "conf#events" {:clear true})

(fn white_space_highlight []
  (local pattern "'\\s\\+$'")
  (vim.cmd (.. "syn match TrailingWhitespace " pattern))
  (vim.cmd "hi link TrailingWhitespace IncSearch"))

(vim.api.nvim_create_autocmd [:BufReadPost]
                             {:pattern ["*"]
                              :callback white_space_highlight
                              :group "conf#events"})

(local vimenter-cwd (vim.fn.getcwd))
(fn save-session []
  (P vimenter-cwd)
  (vim.cmd (.. "mksession! " vimenter-cwd :/.vimsession.vim)))

(vim.api.nvim_create_autocmd [:VimLeave]
                             {:pattern ["*"]
                              :callback save-session
                              :group "conf#events"})

(vim.api.nvim_create_autocmd [:BufWinEnter :WinEnter]
                             {:pattern ["term://*"]
                              :callback (fn []
                                          (vim.cmd :startinsert))
                              :group "conf#events"})

(vim.api.nvim_create_autocmd [:BufLeave]
                             {:pattern ["term://*"]
                              :callback (fn []
                                          (vim.cmd :stopinsert))
                              :group "conf#events"})