blob: a798fcf30652cff61b7eeb6d182a50cb069e87e0 (
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
|
(import-macros {: au!
: ac!} :nvrc.macro.event)
(import-macros {: set!
: setl!} :nvrc.macro.set)
(local {: echo!} (require :nvrc.lib.io))
(local {: line
: mode} vim.fn)
(fn cmd! [...] (vim.cmd ...))
(fn bufexists? [...] (= (vim.fn.bufexists ...) 1))
; Restore cursor style to beam on exit
(au! restore-cursor
(ac! VimLeave * #(set! guicursor ["a:ver75-blinkon0"])))
; Restore the last cursor line
(au! restore-last-cursor-line
(ac! BufReadPost * #(if (and (> (line "'\"") 1)
(<= (line "'\"") (line "$")))
(cmd! "normal! g'\""))))
; Resize splits on window resize
(au! resize-splits-on-resize
(ac! VimResized * "wincmd ="))
;; Read file when it changes on disk
(au! read-file-on-disk-change
(ac! [FocusGained BufEnter CursorHold CursorHoldI] *
#(if (and (not= :c (mode))
(not (bufexists? "[Command Line]")))
(cmd! "checktime")))
(ac! FileChangedShellPost *
#(echo! "File changed on disk. Buffer reloaded.")))
(au! terminal-options
;; Enter Terminal-mode (insert) automatically
(ac! TermOpen * "startinsert")
;; Disables line number on terminal buffers
(ac! TermOpen * #(do
(setl! nonumber)
(setl! norelativenumber)))
;; Disables spell on terminal buffers
(ac! TermOpen * #(setl! nospell))
;; Disables sign column on terminal buffers
(ac! TermOpen * #(setl! signcolumn :no))
;; Disables colorcolumn on terminal buffers
(ac! TermOpen * #(setl! colorcolumn [])))
|