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