summaryrefslogtreecommitdiff
path: root/fnl/plugins.fnl
blob: 22ac59fb6fd85c37a9e55d1e25fde8cbb277d554 (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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
;; List of plugins.
(module plugins)

(def all [;; Color related plugins
          {1 :aktersnurra/no-clown-fiesta.nvim
           :config (fn []
                     (require :config.colorscheme))}
          {1 :norcalli/nvim-colorizer.lua
           :cmd :ColorizerToggle
           :config (fn []
                     (require :config.colorizer))}
          {1 :nvim-treesitter/nvim-treesitter
           :config (fn []
                     (require :config.treesitter))
           :run ":TSUpdate"}
          ;; Completions
          {1 :hrsh7th/nvim-cmp
           :dependencies [{1 :hrsh7th/cmp-buffer}
                          {1 :onsails/lspkind-nvim}
                          {1 :hrsh7th/cmp-nvim-lsp}
                          {1 :hrsh7th/cmp-cmdline}
                          {1 :L3MON4D3/LuaSnip}
                          {1 :hrsh7th/cmp-path}
                          {1 :saadparwaiz1/cmp_luasnip}
                          {1 :f3fora/cmp-spell}]
           :event :InsertEnter
           :config (fn []
                     (require :config.cmp))}
          {1 :rafamadriz/friendly-snippets :event :InsertEnter}
          ;; ;; Core plugins
          {1 :Olical/aniseed}
          {1 :folke/lazy.nvim}
          ;; Git plugins
          {1 :sindrets/diffview.nvim
           :cmd [:DiffviewFileHistory :DiffviewOpen]
           :config (fn []
                     (require :config.diffview))}
          {1 :TimUntersberger/neogit
           :cmd :Neogit
           :dependencies [:nvim-lua/plenary.nvim]
           :config (fn []
                     (require :config.neogit))}
          {1 :lewis6991/gitsigns.nvim
           :event :BufRead
           :config (fn []
                     (require :config.gitsigns))}
          ;; LSP
          {1 :williamboman/mason.nvim
           :event :BufReadPre
           :config (fn []
                     (require :config.lsp.mason))}
          {1 :tamago324/nlsp-settings.nvim}
          {1 :jayp0521/mason-null-ls.nvim
           :after :mason.nvim
           :event :BufReadPre
           :dependencies [:jose-elias-alvarez/null-ls.nvim
                          :williamboman/mason.nvim]
           :config (fn []
                     (require :config.lsp.null-ls)
                     (require :config.lsp.mason-null-ls))}
          {1 :b0o/SchemaStore.nvim}
          {1 :williamboman/mason-lspconfig.nvim
           :event :BufReadPre
           :config (fn []
                     (require :config.lsp.mason-lspconfig)
                     (let [handlers (require :config.lsp.handlers)]
                       (handlers.setup)))
           :dependencies [:neovim/nvim-lspconfig :williamboman/mason.nvim]
           :after :mason.nvim}
          {1 :folke/trouble.nvim
           :cmd :TroubleToggle
           :config (fn []
                     (require :config.trouble))}
          ;; Misc plugins
          {1 :nvim-orgmode/orgmode
           :event :BufWinEnter
           :config (fn []
                     (require :config.orgmode))}
          {1 :moll/vim-bbye :event :BufRead}
          {1 :akinsho/toggleterm.nvim
           :cmd :ToggleTerm
           :config (fn []
                     (require :config.toggleterm))}
          {1 :dstein64/vim-startuptime :cmd :StartupTime}
          ;; Search plugins
          {1 :nvim-telescope/telescope-fzf-native.nvim :build :make}
          {1 :nvim-telescope/telescope-frecency.nvim
           :dependencies :tami5/sqlite.lua}
          {1 :nvim-telescope/telescope.nvim
           :config (fn []
                     (require :config.telescope))
           :dependencies [:nvim-lua/popup.nvim
                          :nvim-lua/plenary.nvim
                          :nvim-telescope/telescope-fzf-native.nvim
                          :nvim-telescope/telescope-frecency.nvim]}
          {1 :tamago324/lir.nvim
           :config (fn []
                     (require :config.lir))
           :dependencies [:kyazdani42/nvim-web-devicons]}
          {1 :ggandor/leap.nvim
           :event :VeryLazy
           :config (fn []
                     (require :config.leap))}
          {1 :ggandor/flit.nvim
           :event :VeryLazy
           :config (fn []
                     (require :config.flit))}
          {1 :ahmedkhalf/project.nvim
           :event :VeryLazy
           :dependencies :nvim-telescope/telescope.nvim
           :config (fn []
                     (require :config.project))}
          {1 :windwp/nvim-spectre
           :event :VeryLazy
           :config (fn []
                     (require :config.spectre))}
          {1 :junegunn/vim-slash
           :event :BufWinEnter
           :config (fn []
                     (require :config.vim-slash))}
          {1 :ThePrimeagen/harpoon
           :event :VeryLazy
           :dependencies :nvim-telescope/telescope.nvim
           :config (fn []
                     (require :config.harpoon))}
          ;; Session plugins
          {1 :rmagatti/auto-session
           :dependencies [:rmagatti/session-lens
                          :nvim-telescope/telescope.nvim]
           :config (fn []
                     (require :config.auto-session))}
          ;; Text manipulation
          {1 :numToStr/Comment.nvim
           :cmd [:CommentNormal :CommentVisual]
           :config (fn []
                     (require :config.comment))}
          {1 :JoosepAlviste/nvim-ts-context-commentstring :event :BufReadPost}
          {1 :kylechui/nvim-surround
           :event :InsertEnter
           :config (fn []
                     (require :config.surround))}
          {1 :gbprod/stay-in-place.nvim
           :event :InsertEnter
           :config (fn []
                     (require :config.stay-in-place))}
          {1 :cappyzawa/trim.nvim
           :event :BufFilePre
           :config (fn []
                     (require :config.trim))}
          {1 :max397574/better-escape.nvim
           :event :VeryLazy
           :config (fn []
                     (require :config.better-escape))}
          {1 :windwp/nvim-autopairs
           :event :InsertEnter
           :config (fn []
                     (require :config.autopairs))}
          {1 :mbbill/undotree :cmd :UndotreeToggle}
          {1 :nvim-lualine/lualine.nvim
           :config (fn []
                     (require :config.lualine))
           :dependencies [:kyazdani42/nvim-web-devicons
                          :arkav/lualine-lsp-progress]}
          {1 :aktersnurra/minibar.nvim
           :config (fn []
                     (require :config.minibar))}
          {1 :folke/zen-mode.nvim
           :cmd :ZenMode
           :config (fn []
                     (require :config.zen))}
          {1 :kevinhwang91/nvim-bqf
           :event :VeryLazy
           :config (fn []
                     (require :config.bqf))}
          {1 :s1n7ax/nvim-window-picker
           :event :VeryLazy
           :config (fn []
                     (require :config.window-picker))}
          {1 :goolord/alpha-nvim
           :config (fn []
                     (require :config.alpha))}
          {1 :folke/which-key.nvim
           :config (fn []
                     (require :config.which-key))}])