From 68c0f6bab06ea587b9b258d1ad3b0c9870bc163f Mon Sep 17 00:00:00 2001 From: Gustaf Rydholm Date: Fri, 14 Oct 2022 01:51:07 +0200 Subject: Update which key with diff and diagnostics --- fnl/config/which-key.fnl | 32 +++++++++++++++++++++++--------- 1 file changed, 23 insertions(+), 9 deletions(-) (limited to 'fnl/config') diff --git a/fnl/config/which-key.fnl b/fnl/config/which-key.fnl index 148ee29..68a8e97 100644 --- a/fnl/config/which-key.fnl +++ b/fnl/config/which-key.fnl @@ -35,12 +35,17 @@ :noremap true :nowait true}) +(def- diff {:name :Diff + :m ["Gitsigns diffthis HEAD" "Gitsigns diff"] + :n [:DiffviewFileHistory :DiffviewFileHistory] + :e ["DiffviewOpen -uno" :DiffviewOpen] + :i [:DiffviewClose :DiffviewClose]}) + (def- mmappings {:a ["lua require('harpoon.mark').add_file()" :Harpoon] :b ["lua require('telescope.builtin').buffers(require('telescope.themes').get_dropdown{sort_lastused = true, initial_mode = 'normal', previewer = false})" "Switch buffers"] - :d [:TroubleToggle :Trouble] - :D ["Telescope diagnostics theme=dropdown" "Telescope diagnostics"] + :d diff :f ["lua require('telescope.builtin').find_files(require('telescope.themes').get_dropdown{previewer = false})" "Find files"] :g ["Telescope live_grep theme=ivy" "Find text"] @@ -48,7 +53,8 @@ "Harpoon Next"] :h ["lua require('harpoon.ui').nav_prev()" "Harpoon Prev"] - :t ["Telescope harpoon marks theme=dropdown" "Search Files"] + :t ["Telescope harpoon marks theme=dropdown" + "Search Files"] :v ["lua vim.lsp.buf.rename()" :Rename] :p [:SaveSession "Save Session"] :r ["lua require('harpoon.ui').toggle_quick_menu()" @@ -63,7 +69,8 @@ :nowait true}) (def- find {:name :Find - :b ["Telescope git_branches theme=dropdown" "Checkout branch"] + :b ["Telescope git_branches theme=dropdown" + "Checkout branch"] :c ["Telescope colorscheme theme=dropdown" :Colorscheme] :f ["lua require('telescope.builtin').find_files(require('telescope.themes').get_dropdown{previewer = false})" "Find files"] @@ -78,9 +85,12 @@ :k ["Telescope keymaps" :Keymaps] :C ["Telescope commands" :Commands]}) +(def- diagnostics {:name :Diagnostics + :d [:TroubleToggle :Trouble] + :D ["Telescope diagnostics theme=dropdown" + "Telescope diagnostics"]}) + (def- git {:name :Git - :d ["Gitsigns diffthis HEAD" :Diff] - :D [:DiffviewFileHistory :DiffviewFileHistory] :j ["lua require 'gitsigns'.next_hunk()" "Next Hunk"] :k ["lua require 'gitsigns'.prev_hunk()" "Prev Hunk"] :l ["lua require 'gitsigns'.blame_line()" :Blame] @@ -90,9 +100,12 @@ :s ["lua require 'gitsigns'.stage_hunk()" "Stage Hunk"] :u ["lua require 'gitsigns'.undo_stage_hunk()" "Undo Stage Hunk"] - :o ["Telescope git_status theme=dropdown" "Open changed file"] - :b ["Telescope git_branches theme=dropdown" "Checkout branch"] - :c ["Telescope git_commits theme=dropdown" "Checkout commit"] + :o ["Telescope git_status theme=dropdown" + "Open changed file"] + :b ["Telescope git_branches theme=dropdown" + "Checkout branch"] + :c ["Telescope git_commits theme=dropdown" + "Checkout commit"] :d ["Gitsigns diffthis HEAD" :Diff]}) (def- lsp {:name :LSP @@ -137,6 +150,7 @@ (def- nmappings {:a ["Telescope lsp_document_symbols theme=dropdown" "Document Symbols"] :c [:Bdelete! "Close Buffer"] + :d diagnostics :f find :g git :h [:Alpha :Alpha] -- cgit v1.2.3-70-g09d2 From 6cb31718df762c6ebf764986074f08b19d6f82f8 Mon Sep 17 00:00:00 2001 From: Gustaf Rydholm Date: Sun, 16 Oct 2022 01:40:16 +0200 Subject: Refactor loading of plugins with packer --- fnl/config/alpha.fnl | 41 ------ fnl/config/auto-session.fnl | 6 +- fnl/config/autocmd.fnl | 10 +- fnl/config/autopairs.fnl | 4 +- fnl/config/better-escape.fnl | 4 +- fnl/config/bqf.fnl | 4 +- fnl/config/cmp.fnl | 8 +- fnl/config/colorizer.fnl | 4 +- fnl/config/colorscheme.fnl | 4 +- fnl/config/comment.fnl | 4 +- fnl/config/diffview.fnl | 4 +- fnl/config/fidget.fnl | 4 +- fnl/config/flit.fnl | 4 +- fnl/config/gitsigns.fnl | 4 +- fnl/config/harpoon.fnl | 4 +- fnl/config/init.fnl | 37 ----- fnl/config/leap.fnl | 17 +-- fnl/config/lir.fnl | 4 +- fnl/config/lsp/handlers.fnl | 6 +- fnl/config/lsp/init.fnl | 10 -- fnl/config/lsp/mason-lspconfig.fnl | 6 +- fnl/config/lsp/mason-null-ls.fnl | 4 +- fnl/config/lsp/mason.fnl | 4 +- fnl/config/lsp/null-ls.fnl | 4 +- fnl/config/lsp/settings/jsonls.fnl | 4 +- fnl/config/lualine.fnl | 5 +- fnl/config/minibar.fnl | 5 +- fnl/config/neogit.fnl | 4 +- fnl/config/orgmode.fnl | 4 +- fnl/config/packer.fnl | 4 +- fnl/config/project.fnl | 4 +- fnl/config/spectre.fnl | 4 +- fnl/config/stabilize.fnl | 4 +- fnl/config/stay-in-place.fnl | 4 +- fnl/config/surround.fnl | 4 +- fnl/config/telescope.fnl | 4 +- fnl/config/toggleterm.fnl | 4 +- fnl/config/treesitter.fnl | 4 +- fnl/config/trim.fnl | 4 +- fnl/config/trouble.fnl | 4 +- fnl/config/util.fnl | 13 ++ fnl/config/which-key.fnl | 9 +- fnl/config/window-picker.fnl | 4 +- fnl/config/zen.fnl | 4 +- fnl/init.fnl | 8 +- fnl/plugins.fnl | 269 ++++++++++++++++++++++++++++--------- fnl/util.fnl | 43 ------ init.lua | 6 + 48 files changed, 326 insertions(+), 297 deletions(-) delete mode 100644 fnl/config/alpha.fnl delete mode 100644 fnl/config/init.fnl delete mode 100644 fnl/config/lsp/init.fnl create mode 100644 fnl/config/util.fnl delete mode 100644 fnl/util.fnl (limited to 'fnl/config') diff --git a/fnl/config/alpha.fnl b/fnl/config/alpha.fnl deleted file mode 100644 index 0f0f680..0000000 --- a/fnl/config/alpha.fnl +++ /dev/null @@ -1,41 +0,0 @@ -;; A customizable greeter. -(module config.alpha {autoload {: util}}) - -(def- ascii-art [" ##############..... ############## " - " ##############......############## " - " ##########..........########## " - " ##########........########## " - " ##########.......########## " - " ##########.....##########.. " - " ##########....##########..... " - " ..##########..##########......... " - " ....##########.#########............. " - " ..################JJJ............ " - " ################............. " - " ##############.JJJ.JJJJJJJJJJ " - " ############...JJ...JJ..JJ JJ " - " ##########....JJ...JJ..JJ JJ " - " ########......JJJ..JJJ JJJ JJJ " - " ###### ......... " - " ..... " - " . "]) - -(let [alpha (util.load-plugin :alpha)] - (let [dashboard (require :alpha.themes.dashboard)] - (set dashboard.section.header.val ascii-art) - (set dashboard.section.buttons.val - [ - (dashboard.button :e " New file" ":ene startinsert ") - (dashboard.button :f " Find file" ":Telescope find_files ") - (dashboard.button :t " Find text" ":Telescope live_grep ") - (dashboard.button :s " Find Session" ":SearchSession") - (dashboard.button :p " Find project" ":Telescope projects ") - (dashboard.button :r " Recently used files" - ":Telescope oldfiles ") - (dashboard.button :c " Configuration" - ":e ~/.config/nvim/init.lua ") - (dashboard.button :q " Quit Neovim" ":qa")]) - (set dashboard.section.header.opts.hl :AlphaHeader) - (set dashboard.section.buttons.opts.hl :AlphaButtons) - (set dashboard.opts.opts.noautocmd true) - (alpha.setup dashboard.opts))) diff --git a/fnl/config/auto-session.fnl b/fnl/config/auto-session.fnl index 62e28b4..35a43a9 100644 --- a/fnl/config/auto-session.fnl +++ b/fnl/config/auto-session.fnl @@ -1,5 +1,5 @@ ;; Session manager. -(module config.auto-session {autoload {: util}}) +(module config.auto-session {autoload {:util :config.util}}) (def- auto-opts {:log_level :info :auto_session_enable_last_session false @@ -16,5 +16,5 @@ :prompt_title :Sessions}) (set vim.o.sessionoptions "blank,buffers,curdir,folds,help,tabpages,winsize,winpos,terminal") -(util.use-config :session-lens lens-opts) -(util.use-config :auto-session auto-opts) +(util.setup :session-lens lens-opts) +(util.setup :auto-session auto-opts) diff --git a/fnl/config/autocmd.fnl b/fnl/config/autocmd.fnl index 017792f..24adcad 100644 --- a/fnl/config/autocmd.fnl +++ b/fnl/config/autocmd.fnl @@ -1,5 +1,8 @@ ;; Autocommands for nvim. -(module config.autocmd {autoload {nvim aniseed.nvim a aniseed.core : util}}) +(module config.autocmd {autoload {nvim aniseed.nvim + env aniseed.env + a aniseed.core + :util :config.util}}) (defn create-autocmd [event opts] (nvim.create_autocmd event opts)) @@ -28,3 +31,8 @@ :command "setlocal spell"}) (create-autocmd :VimResized {:command "tabdo wincmd ="}) + +(create-autocmd :BufWritePost + {:pattern :*.fnl + :callback (lambda [] + (env.init nvim.g.aniseed#env))}) diff --git a/fnl/config/autopairs.fnl b/fnl/config/autopairs.fnl index f0aa2b6..6918c40 100644 --- a/fnl/config/autopairs.fnl +++ b/fnl/config/autopairs.fnl @@ -1,5 +1,5 @@ ;; Autopairs for brackets and quote symbols. -(module config.autopairs {autoload {: util}}) +(module config.autopairs {autoload {:util :config.util}}) (def- opts {:check_ts true :ts_config {:lua [:string :source] @@ -18,4 +18,4 @@ :highlight :PmenuSel :highlight_grey :LineNr}}) -(util.use-config :nvim-autopairs opts) +(util.setup :nvim-autopairs opts) diff --git a/fnl/config/better-escape.fnl b/fnl/config/better-escape.fnl index 769fb32..3e68ddd 100644 --- a/fnl/config/better-escape.fnl +++ b/fnl/config/better-escape.fnl @@ -1,9 +1,9 @@ ;; Better escape without nasty delay. -(module config.better-escape {autoload {: util}}) +(module config.better-escape {autoload {:util :config.util}}) (def- opts {:mapping [:kk :jj] :timeout vim.o.timeoutlen :clear_empty_lines false :keys :}) -(util.use-config :better_escape opts) +(util.setup :better_escape opts) diff --git a/fnl/config/bqf.fnl b/fnl/config/bqf.fnl index e5d7ab2..4c877a1 100644 --- a/fnl/config/bqf.fnl +++ b/fnl/config/bqf.fnl @@ -1,4 +1,4 @@ ;; Make Neovim's quickfix window better. -(module config.bqf {autoload {: util}}) +(module config.bqf {autoload {:util :config.util}}) -(util.use-config :bqf {}) +(util.setup :bqf {}) diff --git a/fnl/config/cmp.fnl b/fnl/config/cmp.fnl index bf4a331..73ebba4 100644 --- a/fnl/config/cmp.fnl +++ b/fnl/config/cmp.fnl @@ -1,9 +1,9 @@ ;; Configuration for completion plugin. -(module config.cmp {autoload {nvim aniseed.nvim : util}}) +(module config.cmp {autoload {nvim aniseed.nvim :util :config.util}}) -(let [cmp (util.load-plugin :cmp) - lspkind (util.load-plugin :lspkind) - luasnip (util.load-plugin :luasnip) +(let [cmp (util.prequire :cmp) + lspkind (util.prequire :lspkind) + luasnip (util.prequire :luasnip) luasnip-vscode (require :luasnip/loaders/from_vscode)] (luasnip-vscode.lazy_load) (lspkind.init) diff --git a/fnl/config/colorizer.fnl b/fnl/config/colorizer.fnl index 0757500..8358f0b 100644 --- a/fnl/config/colorizer.fnl +++ b/fnl/config/colorizer.fnl @@ -1,4 +1,4 @@ ;; Enables colorization of color codes in source files. -(module config.colorizer {autoload {: util}}) +(module config.colorizer {autoload {:util :config.util}}) -(util.use-config :colorizer {}) +(util.setup :colorizer {}) diff --git a/fnl/config/colorscheme.fnl b/fnl/config/colorscheme.fnl index b2e0279..50317c7 100644 --- a/fnl/config/colorscheme.fnl +++ b/fnl/config/colorscheme.fnl @@ -1,8 +1,8 @@ ;; Load neovim colorscheme. -(module config.colorscheme {autoload {: util}}) +(module config.colorscheme {autoload {:util :config.util}}) (local colorscheme :no-clown-fiesta) (def- opts {:type :bold}) -(util.use-config :no-clown-fiesta opts) +(util.setup :no-clown-fiesta opts) diff --git a/fnl/config/comment.fnl b/fnl/config/comment.fnl index a6e9c5f..1b896f4 100644 --- a/fnl/config/comment.fnl +++ b/fnl/config/comment.fnl @@ -1,6 +1,6 @@ ;; Language aware commenting. -(module config.comment {autoload {: util}}) +(module config.comment {autoload {:util :config.util}}) (def- opts {}) -(util.use-config :Comment opts) +(util.setup :Comment opts) diff --git a/fnl/config/diffview.fnl b/fnl/config/diffview.fnl index eea5ed3..a4fed9d 100644 --- a/fnl/config/diffview.fnl +++ b/fnl/config/diffview.fnl @@ -1,6 +1,6 @@ ;; Trim whitespaces on save. -(module config.diffview {autoload {: util}}) +(module config.diffview {autoload {:util :config.util}}) (def- opts {}) -(util.use-config :diffview opts) +(util.setup :diffview opts) diff --git a/fnl/config/fidget.fnl b/fnl/config/fidget.fnl index fa87fd1..3c66990 100644 --- a/fnl/config/fidget.fnl +++ b/fnl/config/fidget.fnl @@ -1,6 +1,6 @@ ;; Show lsp progress. -(module config.fidget {autoload {: util}}) +(module config.fidget {autoload {:util :config.util}}) (def- opts {:text {:spinner :dots_snake}}) -(util.use-config :fidget opts) +(util.setup :fidget opts) diff --git a/fnl/config/flit.fnl b/fnl/config/flit.fnl index 10e103d..6a769f0 100644 --- a/fnl/config/flit.fnl +++ b/fnl/config/flit.fnl @@ -1,9 +1,9 @@ ;; fFtT motions on roids. -(module config.flit {autoload {: util nvim aniseed.nvim}}) +(module config.flit {autoload {:util :config.util nvim aniseed.nvim}}) (def- opts {:keys {:f :f :F :F :t :t :T :T} :labeled_modes :v :multiline true :opts {}}) -(util.use-config :flit opts) +(util.setup :flit opts) diff --git a/fnl/config/gitsigns.fnl b/fnl/config/gitsigns.fnl index a693f7d..43f831e 100644 --- a/fnl/config/gitsigns.fnl +++ b/fnl/config/gitsigns.fnl @@ -1,5 +1,5 @@ ;; Add git signs to source files. -(module config.gitsigns {autoload {: util}}) +(module config.gitsigns {autoload {:util :config.util}}) (def- signs {:add {:hl :GitSignsAdd :text "|" @@ -46,4 +46,4 @@ :col 1} :yadm {:enable false}}) -(util.use-config :gitsigns opts) +(util.setup :gitsigns opts) diff --git a/fnl/config/harpoon.fnl b/fnl/config/harpoon.fnl index 0c3ca5e..71c3798 100644 --- a/fnl/config/harpoon.fnl +++ b/fnl/config/harpoon.fnl @@ -1,9 +1,9 @@ ;; Harpoon files for navigation. -(module config.harpoon {autoload {: util nvim aniseed.nvim}}) +(module config.harpoon {autoload {:util :config.util nvim aniseed.nvim}}) (def- opts {}) -(util.use-config :harpoon opts) +(util.setup :harpoon opts) (nvim.set_keymap "n" "" diff --git a/fnl/config/init.fnl b/fnl/config/init.fnl deleted file mode 100644 index 860cdc4..0000000 --- a/fnl/config/init.fnl +++ /dev/null @@ -1,37 +0,0 @@ -;; Load all plugin configs. -(module config.init {require [config.alpha - config.auto-session - config.autocmd - config.autopairs - config.better-escape - config.bqf - config.cmp - config.colorizer - config.colorscheme - config.comment - config.diffview - config.fidget - config.flit - config.gitsigns - config.harpoon - config.leap - config.lir - config.lsp - config.lualine - config.minibar - config.neogit - config.orgmode - config.project - config.spectre - config.stay-in-place - config.stabilize - config.surround - config.telescope - config.toggleterm - config.treesitter - config.trim - config.trouble - config.vim-slash - config.which-key - config.window-picker - config.zen]}) diff --git a/fnl/config/leap.fnl b/fnl/config/leap.fnl index cb6a267..541b0e0 100644 --- a/fnl/config/leap.fnl +++ b/fnl/config/leap.fnl @@ -1,19 +1,8 @@ ;; Leap through text. -(module config.leap {autoload {: util nvim aniseed.nvim}}) +(module config.leap {autoload {:util :config.util nvim aniseed.nvim}}) -(def- opts {:max_aot_targets nil - :highlight_unlabeled false - :max_highlighted_traversal_targets 10 - :case_sensitive false - :equivalence_classes [" \t\r\n"] - :substitute_chars [] - :special_keys {:repeat_search : - :next_aot_match : - :next_match [";" :] - :prev_match ["," :] - :next_group : - :prev_group :}}) +(def- opts {}) -(let [leap (util.load-plugin :leap)] +(let [leap (util.prequire :leap)] (leap.setup opts) (leap.set_default_keymaps)) diff --git a/fnl/config/lir.fnl b/fnl/config/lir.fnl index c775c4b..8f9058c 100644 --- a/fnl/config/lir.fnl +++ b/fnl/config/lir.fnl @@ -1,5 +1,5 @@ ;; Simple file manager. -(module config.lir {autoload {: util nvim aniseed.nvim}}) +(module config.lir {autoload {:util :config.util nvim aniseed.nvim}}) (defn- opts [actions mark-actions clipboard-actions] {:show_hidden_files false @@ -35,7 +35,7 @@ ":lua require(\"lir.mark.actions\").toggle_mark(\"v\")" {:noremap true :silent true}))}) -(let [lir (util.load-plugin :lir)] +(let [lir (util.prequire :lir)] (let [actions (require :lir.actions) mark-actions (require :lir.mark.actions) clipboard-actions (require :lir.clipboard.actions)] diff --git a/fnl/config/lsp/handlers.fnl b/fnl/config/lsp/handlers.fnl index c892a22..913a5a2 100644 --- a/fnl/config/lsp/handlers.fnl +++ b/fnl/config/lsp/handlers.fnl @@ -1,5 +1,5 @@ ;; Handlers for the requests and responses from and to the lsp server. -(module config.lsp.handlers {autoload {: util nvim aniseed.nvim}}) +(module config.lsp.handlers {autoload {:util :config.util nvim aniseed.nvim}}) (def- signs [{:name :DiagnosticSignError :text ""} {:name :DiagnosticSignWarn :text ""} @@ -55,5 +55,5 @@ (let [capabilities (vim.lsp.protocol.make_client_capabilities)] (set capabilities.textDocument.completion.completionItem.snippetSupport true) - (let [cmp-nvim-lsp (util.load-plugin :cmp_nvim_lsp)] - (cmp-nvim-lsp.update_capabilities capabilities)))) + (let [cmp-nvim-lsp (util.prequire :cmp_nvim_lsp)] + (cmp-nvim-lsp.default_capabilities capabilities)))) diff --git a/fnl/config/lsp/init.fnl b/fnl/config/lsp/init.fnl deleted file mode 100644 index 378473e..0000000 --- a/fnl/config/lsp/init.fnl +++ /dev/null @@ -1,10 +0,0 @@ -;; Loads the LSP functionality. -(module config.lsp.init {autoload {: util}}) - -(require :config.lsp.mason) -(require :config.lsp.mason-lspconfig) -(let [handlers (require :config.lsp.handlers)] - (handlers.setup)) - -(require :config.lsp.null-ls) -(require :config.lsp.mason-null-ls) diff --git a/fnl/config/lsp/mason-lspconfig.fnl b/fnl/config/lsp/mason-lspconfig.fnl index a2bd714..7a03ced 100644 --- a/fnl/config/lsp/mason-lspconfig.fnl +++ b/fnl/config/lsp/mason-lspconfig.fnl @@ -1,5 +1,5 @@ ;; TBD -(module config.lsp.mason-lspconfig {autoload {: util}}) +(module config.lsp.mason-lspconfig {autoload {:util :config.util}}) (def- servers [:bashls :clangd @@ -49,9 +49,9 @@ (def- opts {:ensure_installed servers :automatic_installation true}) -(util.use-config :mason-lspconfig opts) +(util.setup :mason-lspconfig opts) -(let [lspconfig (util.load-plugin :lspconfig)] +(let [lspconfig (util.prequire :lspconfig)] (each [_ server (ipairs servers)] (let [server-config (. lspconfig server)] (server-config.setup (get-server-opts server))))) diff --git a/fnl/config/lsp/mason-null-ls.fnl b/fnl/config/lsp/mason-null-ls.fnl index 42b3715..e739b9b 100644 --- a/fnl/config/lsp/mason-null-ls.fnl +++ b/fnl/config/lsp/mason-null-ls.fnl @@ -1,5 +1,5 @@ ;; Ensure that tools needed for null-ls are installed. -(module config.mason-null-ls {autoload {: util}}) +(module config.mason-null-ls {autoload {:util :config.util}}) (def- opts {:ensure_installed [:flake8 :golangci-lint @@ -23,4 +23,4 @@ :auto_update true :automatic_installation true}) -(util.use-config :mason-null-ls opts) +(util.setup :mason-null-ls opts) diff --git a/fnl/config/lsp/mason.fnl b/fnl/config/lsp/mason.fnl index 66963cb..7c58d94 100644 --- a/fnl/config/lsp/mason.fnl +++ b/fnl/config/lsp/mason.fnl @@ -1,9 +1,9 @@ ;; Mason manages external tooling, e.g. lsp, formatters, and linters. -(module config.lsp.mason {autoload {: util}}) +(module config.lsp.mason {autoload {:util :config.util}}) (def- opts {:ui {:icons {:package_installed "✓" :package_pending "➜" :package_uninstalled "✗"}} :max_concurrent_installers 10}) -(util.use-config :mason opts) +(util.setup :mason opts) diff --git a/fnl/config/lsp/null-ls.fnl b/fnl/config/lsp/null-ls.fnl index 9ad1fed..7efb079 100644 --- a/fnl/config/lsp/null-ls.fnl +++ b/fnl/config/lsp/null-ls.fnl @@ -1,7 +1,7 @@ ;; Adds LSP diagnostics and formatting. -(module config.lsp.null-ls {autoload {: util}}) +(module config.lsp.null-ls {autoload {:util :config.util}}) -(let [null-ls (util.load-plugin :null-ls)] +(let [null-ls (util.prequire :null-ls)] (let [formatting null-ls.builtins.formatting diagnostics null-ls.builtins.diagnostics] (null-ls.setup {:debug false diff --git a/fnl/config/lsp/settings/jsonls.fnl b/fnl/config/lsp/settings/jsonls.fnl index a2cb78c..3fe9299 100644 --- a/fnl/config/lsp/settings/jsonls.fnl +++ b/fnl/config/lsp/settings/jsonls.fnl @@ -1,7 +1,7 @@ ;; Json schema store catalog language server. -(module config.lsp.settings.jsonls {autoload {: util}}) +(module config.lsp.settings.jsonls {autoload {:util :config.util}}) -(let [schemastore (util.load-plugin :schemastore)] +(let [schemastore (util.prequire :schemastore)] {:init_options {:providerFormatter false} :settings {:json {:schemas (schemastore.json.schemas)}} :setup {:commands {:Format [(fn [] diff --git a/fnl/config/lualine.fnl b/fnl/config/lualine.fnl index d098966..ee68523 100644 --- a/fnl/config/lualine.fnl +++ b/fnl/config/lualine.fnl @@ -1,8 +1,9 @@ ;; Statusbar. -(module config.lualine {autoload {: util}}) +(module config.lualine {autoload {:util :config.util}}) (def- disable [:neogitstatus :lir + :netrw :alpha :Outline :NeogitStatus @@ -73,4 +74,4 @@ :lualine_z [:location :progress]} :extensions []}) -(util.use-config :lualine opts) +(util.setup :lualine opts) diff --git a/fnl/config/minibar.fnl b/fnl/config/minibar.fnl index fddb71c..21d687a 100644 --- a/fnl/config/minibar.fnl +++ b/fnl/config/minibar.fnl @@ -1,4 +1,4 @@ -(module config.minibar {autoload {: util}}) +(module config.minibar {autoload {:util :config.util}}) (def- opts {:ignore-filetypes [:help :startify @@ -10,6 +10,7 @@ :alpha :lir :org + :netrw :Outline :NeogitStatus :NeogitCommitMessage @@ -25,4 +26,4 @@ :InsertEnter :BufWritePost]}) -(util.use-config :minibar opts) +(util.setup :minibar opts) diff --git a/fnl/config/neogit.fnl b/fnl/config/neogit.fnl index da723c7..aab1291 100644 --- a/fnl/config/neogit.fnl +++ b/fnl/config/neogit.fnl @@ -1,4 +1,4 @@ ;; UI for git. -(module config.neogit {autoload {: util}}) +(module config.neogit {autoload {:util :config.util}}) -(util.use-config :neogit {}) +(util.setup :neogit {}) diff --git a/fnl/config/orgmode.fnl b/fnl/config/orgmode.fnl index 25501af..af3d705 100644 --- a/fnl/config/orgmode.fnl +++ b/fnl/config/orgmode.fnl @@ -1,5 +1,5 @@ ;; Orgmode for nvim. -(module config.orgmode {autoload {nvim aniseed.nvim : util}}) +(module config.orgmode {autoload {nvim aniseed.nvim :util :config.util}}) (nvim.ex.set :conceallevel=2) (nvim.ex.set :concealcursor=nc) @@ -44,6 +44,6 @@ :org_agenda_templates templates : notifications}) -(let [orgmode (util.load-plugin :orgmode)] +(let [orgmode (util.prequire :orgmode)] (orgmode.setup_ts_grammar) (orgmode.setup opts)) diff --git a/fnl/config/packer.fnl b/fnl/config/packer.fnl index 36691b9..b8ab91a 100644 --- a/fnl/config/packer.fnl +++ b/fnl/config/packer.fnl @@ -1,7 +1,7 @@ ;; Load packer config -(module config.packer {autoload {: util}}) +(module config.packer {autoload {:util :config.util}}) -(let [packer (util.load-plugin :packer) +(let [packer (util.prequire :packer) packer-util (require :packer.util)] (packer.init {:display {:open_fn (fn [] (packer-util.float {:border :rounded}))}})) diff --git a/fnl/config/project.fnl b/fnl/config/project.fnl index 6ef7942..1c97527 100644 --- a/fnl/config/project.fnl +++ b/fnl/config/project.fnl @@ -1,5 +1,5 @@ ;; Provides project management. -(module config.project {autoload {: util}}) +(module config.project {autoload {:util :config.util}}) (def- opts {:active true :on_config_done nil @@ -11,4 +11,4 @@ :ignore_lsp {} :datapath (vim.fn.stdpath :data)}) -(util.use-config :project_nvim opts) +(util.setup :project_nvim opts) diff --git a/fnl/config/spectre.fnl b/fnl/config/spectre.fnl index 13bbcc5..337beb1 100644 --- a/fnl/config/spectre.fnl +++ b/fnl/config/spectre.fnl @@ -1,5 +1,5 @@ ;; Find and replace. -(module config.spectre {autoload {: util}}) +(module config.spectre {autoload {:util :config.util}}) (def- opts {:color_devicons true :highlight {:ui :String :search :DiffChange :replace :DiffDelete} @@ -60,4 +60,4 @@ :is_open_target_win true :is_insert_mode false}) -(util.use-config :spectre opts) +(util.setup :spectre opts) diff --git a/fnl/config/stabilize.fnl b/fnl/config/stabilize.fnl index ff2ac19..59b7c5d 100644 --- a/fnl/config/stabilize.fnl +++ b/fnl/config/stabilize.fnl @@ -1,5 +1,5 @@ ;; Stabilize window open/close events. -(module config.stabilize {autoload {: util}}) +(module config.stabilize {autoload {:util :config.util}}) (def- opts {:force true ;; stabilize window even when current cursor position will be hidden behind new window @@ -12,4 +12,4 @@ ;; comma-separated list of autocmds that wil trigger the plugins window restore function }) -(util.use-config :stabilize opts) +(util.setup :stabilize opts) diff --git a/fnl/config/stay-in-place.fnl b/fnl/config/stay-in-place.fnl index 9136fdf..1c19399 100644 --- a/fnl/config/stay-in-place.fnl +++ b/fnl/config/stay-in-place.fnl @@ -1,4 +1,4 @@ ;; Prevent the cursor from moving when using shift and filter actions. -(module config.stay-in-place {autoload {: util}}) +(module config.stay-in-place {autoload {:util :config.util}}) -(util.use-config :stay-in-place {}) +(util.setup :stay-in-place {}) diff --git a/fnl/config/surround.fnl b/fnl/config/surround.fnl index 04a516f..8a3aad9 100644 --- a/fnl/config/surround.fnl +++ b/fnl/config/surround.fnl @@ -1,6 +1,6 @@ ;; Surround selections. -(module config.surround {autoload {: util}}) +(module config.surround {autoload {:util :config.util}}) (def- opts {}) -(util.use-config :nvim-surround opts) +(util.setup :nvim-surround opts) diff --git a/fnl/config/telescope.fnl b/fnl/config/telescope.fnl index 7989c54..8f0459f 100644 --- a/fnl/config/telescope.fnl +++ b/fnl/config/telescope.fnl @@ -1,9 +1,9 @@ ;; Telescope a highly extendable fuzzy finder over lists. -(module config.telescope {autoload {: util nvim aniseed.nvim}}) +(module config.telescope {autoload {:util :config.util nvim aniseed.nvim}}) (def- opts {:noremap true :silent true}) -(let [telescope (util.load-plugin :telescope)] +(let [telescope (util.prequire :telescope)] (let [actions (require :telescope.actions)] (telescope.setup {:defaults {:prompt_prefix "  " :selection_caret "> " diff --git a/fnl/config/toggleterm.fnl b/fnl/config/toggleterm.fnl index 329964c..2a1a462 100644 --- a/fnl/config/toggleterm.fnl +++ b/fnl/config/toggleterm.fnl @@ -1,6 +1,6 @@ ;; Terminal inside nvim. (module config.toggleterm - {autoload {: util nvim aniseed.nvim autocmd config.autocmd}}) + {autoload {:util :config.util nvim aniseed.nvim autocmd config.autocmd}}) (def- opts {:size 16 :shade_terminals false}) @@ -10,7 +10,7 @@ (nvim.set_keymap :t : "wincmd k" {}) (nvim.set_keymap :t : "wincmd l" {})) -(util.use-config :toggleterm opts) +(util.setup :toggleterm opts) (autocmd.create-autocmd :TermOpen {:pattern "term://*toggleterm#*" :callback set-terminal-keymaps}) diff --git a/fnl/config/treesitter.fnl b/fnl/config/treesitter.fnl index a2ba356..058182d 100644 --- a/fnl/config/treesitter.fnl +++ b/fnl/config/treesitter.fnl @@ -1,6 +1,6 @@ ;; Treesitter is a tool for building syntax trees for source files. ;; In the neovim context it helps with better coloring. -(module config.treesitter {autoload {: util}}) +(module config.treesitter {autoload {:util :config.util}}) (def- opts {:ensure_installed [:c :rust @@ -29,4 +29,4 @@ :indent {:enable true :disable [:yaml :python :css]} :playground {:enable true}}) -(util.use-config :nvim-treesitter.configs opts) +(util.setup :nvim-treesitter.configs opts) diff --git a/fnl/config/trim.fnl b/fnl/config/trim.fnl index a2faf48..ee699fb 100644 --- a/fnl/config/trim.fnl +++ b/fnl/config/trim.fnl @@ -1,6 +1,6 @@ ;; Trim whitespaces on save. -(module config.trim {autoload {: util}}) +(module config.trim {autoload {:util :config.util}}) (def- opts {:disable [:python]}) -(util.use-config :trim opts) +(util.setup :trim opts) diff --git a/fnl/config/trouble.fnl b/fnl/config/trouble.fnl index 03942af..0266ec0 100644 --- a/fnl/config/trouble.fnl +++ b/fnl/config/trouble.fnl @@ -1,5 +1,5 @@ ;; Pretty diagnostics. -(module config.trouble {autoload {: util}}) +(module config.trouble {autoload {:util :config.util}}) (def- opts {:position :bottom ;; position of the list can be: bottom, top, left, right @@ -79,4 +79,4 @@ ;; enabling this will use the signs defined in your lsp client }) -(util.use-config :trouble opts) +(util.setup :trouble opts) diff --git a/fnl/config/util.fnl b/fnl/config/util.fnl new file mode 100644 index 0000000..a4dcf5b --- /dev/null +++ b/fnl/config/util.fnl @@ -0,0 +1,13 @@ +;; Utility functions. +(module util {autoload {a aniseed.core nvim aniseed.nvim}}) + +(defn prequire [name] + (let [(ok? plugin) (pcall require name)] + (if ok? + plugin + (vim.notify (.. "Could not load config: " plugin) + vim.log.levels.WARN)))) + +(defn setup [plugin config] + (let [plugin (prequire plugin)] + (plugin.setup config))) diff --git a/fnl/config/which-key.fnl b/fnl/config/which-key.fnl index 68a8e97..759166c 100644 --- a/fnl/config/which-key.fnl +++ b/fnl/config/which-key.fnl @@ -1,5 +1,5 @@ ;; Which-key provides a pop-up meny for some key mappings. -(module config.which-key {autoload {: util nvim aniseed.nvim}}) +(module config.which-key {autoload {:util :config.util nvim aniseed.nvim}}) (def- setup {:plugins {:marks true :registers true @@ -75,11 +75,12 @@ :f ["lua require('telescope.builtin').find_files(require('telescope.themes').get_dropdown{previewer = false})" "Find files"] :t ["Telescope live_grep theme=ivy" "Find text"] - :s ["Telescope grep_string theme=dropdown" "Find String"] + :s ["SearchSession" "Find Session"] + :S ["Telescope grep_string theme=dropdown" "Find String"] :h ["Telescope help_tags" :Help] :H ["Telescope highlights" :Highlights] :l ["Telescope resume" "Last Search"] - :M ["Telescope man_pages" "Man Pages"] + :p ["Telescope projects" "Find project"] :r ["Telescope oldfiles theme=dropdown" "Recent File"] :R ["Telescope registers" :Registers] :k ["Telescope keymaps" :Keymaps] @@ -175,7 +176,7 @@ (def- vmappings {:n ["lua require('Comment.api').toggle.linewise(vim.fn.visualmode())" :Comment]}) -(let [which-key (util.load-plugin :which-key)] +(let [which-key (util.prequire :which-key)] (which-key.setup setup) (which-key.register mmappings mopts) (which-key.register nmappings nopts) diff --git a/fnl/config/window-picker.fnl b/fnl/config/window-picker.fnl index 3775ffe..268e952 100644 --- a/fnl/config/window-picker.fnl +++ b/fnl/config/window-picker.fnl @@ -1,8 +1,8 @@ ;; Trim whitespaces on save. -(module config.window-picker {autoload {: util}}) +(module config.window-picker {autoload {:util :config.util}}) (def- opts {:other_win_hl_color "#171717" :fg_color "#E1E1E1" :selection_chars :MNEIOARSTG}) -(util.use-config :window-picker opts) +(util.setup :window-picker opts) diff --git a/fnl/config/zen.fnl b/fnl/config/zen.fnl index 543afe7..df90661 100644 --- a/fnl/config/zen.fnl +++ b/fnl/config/zen.fnl @@ -1,5 +1,5 @@ ;; Zen mode. -(module config.zen {autoload {: util}}) +(module config.zen {autoload {:util :config.util}}) (def- opts {:window {:backdrop 1 :height 0.8 @@ -11,4 +11,4 @@ :tmux {:enabled true} :twilight {:enabled true}}}) -(util.use-config :zen-mode opts) +(util.setup :zen-mode opts) diff --git a/fnl/init.fnl b/fnl/init.fnl index 362dc78..542dead 100644 --- a/fnl/init.fnl +++ b/fnl/init.fnl @@ -1,4 +1,6 @@ -;; Install, load settings, and load plugin configs. -(module init {autoload {: util} require [settings config.packer]}) +;; Load plugins with packer. +(module init {autoload {: plugins : packer} require [settings config.packer]}) -(util.load-plugins) +(packer.startup (fn [use] + (each [_ plugin (pairs plugins.all)] + (use plugin)))) diff --git a/fnl/plugins.fnl b/fnl/plugins.fnl index 09fc301..897d24e 100644 --- a/fnl/plugins.fnl +++ b/fnl/plugins.fnl @@ -1,67 +1,206 @@ ;; List of plugins. +(module plugins) -{ - :goolord/alpha-nvim {} - :Olical/aniseed {} - :rmagatti/auto-session {} - :max397574/better-escape.nvim {} - :hrsh7th/cmp-buffer {} - :hrsh7th/cmp-cmdline {} - :hrsh7th/cmp-nvim-lsp {} - :hrsh7th/cmp-path {} - :saadparwaiz1/cmp_luasnip {} - :f3fora/cmp-spell {} - :numToStr/Comment.nvim {} - :sindrets/diffview.nvim {} - :j-hui/fidget.nvim {} - :ggandor/flit.nvim {} - :rafamadriz/friendly-snippets {} - :lewis6991/gitsigns.nvim {} - :ThePrimeagen/harpoon {} - :lewis6991/impatient.nvim {} - :ggandor/leap.nvim {} - :tamago324/lir.nvim {} - :onsails/lspkind-nvim {} - :nvim-lualine/lualine.nvim {:requires {1 :kyazdani42/nvim-web-devicons :opt true}} - :L3MON4D3/LuaSnip {} - :williamboman/mason-lspconfig.nvim {} - :jayp0521/mason-null-ls.nvim {} - :williamboman/mason.nvim {} - :aktersnurra/minibar.nvim {} - :TimUntersberger/neogit {:requires :nvim-lua/plenary.nvim} - :tamago324/nlsp-settings.nvim {} - :aktersnurra/no-clown-fiesta.nvim {} - :jose-elias-alvarez/null-ls.nvim {} - :windwp/nvim-autopairs {} - :kevinhwang91/nvim-bqf {} - :hrsh7th/nvim-cmp {} - :norcalli/nvim-colorizer.lua {} - :neovim/nvim-lspconfig {} - :windwp/nvim-spectre {} - :kylechui/nvim-surround {} - :nvim-treesitter/nvim-treesitter {:run ":TSUpdate"} - :JoosepAlviste/nvim-ts-context-commentstring {} - :kyazdani42/nvim-web-devicons {} - :s1n7ax/nvim-window-picker {} - :nvim-orgmode/orgmode {} - :wbthomason/packer.nvim {} - :nvim-treesitter/playground {} - :nvim-lua/plenary.nvim {} - :nvim-lua/popup.nvim {} - :ahmedkhalf/project.nvim {} - :b0o/SchemaStore.nvim {} - :rmagatti/session-lens {} - :luukvbaal/stabilize.nvim {} - :gbprod/stay-in-place.nvim {} - :nvim-telescope/telescope-file-browser.nvim {} - :nvim-telescope/telescope-fzf-native.nvim {:run :make} - :nvim-telescope/telescope.nvim {:requires :nvim-lua/plenary.nvim} - :akinsho/toggleterm.nvim {} - :cappyzawa/trim.nvim {} - :folke/trouble.nvim {} - :moll/vim-bbye {} - :junegunn/vim-slash {} - :dstein64/vim-startuptime {} - :folke/which-key.nvim {} - :folke/zen-mode.nvim {} -} +(def core [{1 :Olical/aniseed} + {1 :lewis6991/impatient.nvim} + {1 :wbthomason/packer.nvim}]) + +(def completions {1 :hrsh7th/nvim-cmp + :requires [{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 + :want :Luasnip + :config (fn [] + (require :config.cmp))}) + +(def git [{1 :sindrets/diffview.nvim + :config (fn [] + (require :config.diffview)) + :event :BufRead} + {1 :TimUntersberger/neogit + :config (fn [] + (require :config.neogit)) + :event :BufRead + :requires [:nvim-lua/plenary.nvim]} + {1 :lewis6991/gitsigns.nvim + :config (fn [] + (require :config.gitsigns)) + :event :BufRead}]) + +(def search [{1 :nvim-telescope/telescope-file-browser.nvim} + {1 :nvim-telescope/telescope-fzf-native.nvim :run :make} + {1 :nvim-telescope/telescope.nvim + :config (fn [] + (require :config.telescope)) + :requires [:nvim-lua/popup.nvim + :nvim-lua/plenary + :telescope-fzf-native.nvim + :telescope-file-browser.nvim] + :wants [:popup.nvim + :plenary.nvim + :telescope-fzf-native.nvim + :telescope-file-browser.nvim]} + {1 :ggandor/leap.nvim + :config (fn [] + (require :config.leap)) + :event :BufRead} + {1 :ggandor/flit.nvim + :config (fn [] + (require :config.flit)) + :after :leap.nvim + :event :BufRead} + {1 :ahmedkhalf/project.nvim + :config (fn [] + (require :config.project))} + {1 :tamago324/lir.nvim + :config (fn [] + (require :config.lir)) + :requires [:kyazdani42/nvim-web-devicons]} + {1 :ThePrimeagen/harpoon + :config (fn [] + (require :config.harpoon))}]) + +(def snippets [:rafamadriz/friendly-snippets]) + +(def lsp [{1 :j-hui/fidget.nvim + :event :BufWinEnter + :config (fn [] + (require :config.fidget))} + {1 :jose-elias-alvarez/null-ls.nvim} + {1 :neovim/nvim-lspconfig} + {1 :williamboman/mason.nvim + :event :BufWinEnter + :config (fn [] + (require :config.lsp.mason))} + {1 :tamago324/nlsp-settings.nvim} + {1 :jayp0521/mason-null-ls.nvim + :event :BufWinEnter + :config (fn [] + (require :config.lsp.null-ls) + (require :config.lsp.mason-null-ls)) + :requires [:jose-elias-alvarez/null-ls.nvim + :williamboman/mason.nvim] + :after :mason.nvim} + {1 :b0o/SchemaStore.nvim} + {1 :williamboman/mason-lspconfig.nvim + :event :BufWinEnter + :config (fn [] + (require :config.lsp.mason-lspconfig) + (let [handlers (require :config.lsp.handlers)] + (handlers.setup))) + :requires [:neovim/nvim-lspconfig :williamboman/mason.nvim] + :after :mason.nvim} + {1 :folke/trouble.nvim + :config (fn [] + (require :config.trouble)) + :event :BufWinEnter}]) + +(def color [{1 :aktersnurra/no-clown-fiesta.nvim + :config (fn [] + (require :config.colorscheme))} + {1 :norcalli/nvim-colorizer.lua + :config (fn [] + (require :config.colorizer)) + :event :BufRead} + {1 :nvim-treesitter/nvim-treesitter + :config (fn [] + (require :config.treesitter)) + :run ":TSUpdate"}]) + +(def ui [{1 :nvim-lualine/lualine.nvim + :event :BufWinEnter + :config (fn [] + (require :config.lualine)) + :requires [:kyazdani42/nvim-web-devicons]} + {1 :aktersnurra/minibar.nvim + :config (fn [] + (require :config.minibar)) + :event :BufRead} + {1 :folke/zen-mode.nvim + :config (fn [] + (require :config.zen)) + :event :BufWinEnter} + {1 :kevinhwang91/nvim-bqf + :config (fn [] + (require :config.bqf)) + :event :BufRead} + {1 :s1n7ax/nvim-window-picker + :config (fn [] + (require :config.window-picker)) + :event :BufWinEnter} + {1 :luukvbaal/stabilize.nvim + :config (fn [] + (require :config.stabilize)) + :event :BufWinEnter} + {1 :moll/vim-bbye :event :BufWinEnter} + {1 :folke/which-key.nvim + :config (fn [] + (require :config.which-key)) + :event :BufWinEnter}]) + +(def session {1 :rmagatti/auto-session + :config (fn [] + (require :config.auto-session)) + :requires [:rmagatti/session-lens]}) + +(def text [{1 :numToStr/Comment.nvim + :config (fn [] + (require :config.comment)) + :event :BufWinEnter} + {1 :JoosepAlviste/nvim-ts-context-commentstring :event :BufReadPost} + {1 :kylechui/nvim-surround + :config (fn [] + (require :config.surround)) + :event :BufRead} + {1 :gbprod/stay-in-place.nvim + :event :BufWinEnter + :config (fn [] + (require :config.stay-in-place))} + {1 :junegunn/vim-slash + :config (fn [] + (require :config.vim-slash)) + :event :BufWinEnter} + {1 :cappyzawa/trim.nvim + :config (fn [] + (require :config.trim)) + :event :BufWinEnter} + {1 :max397574/better-escape.nvim + :event :BufWinEnter + :config (fn [] + (require :config.better-escape))} + {1 :windwp/nvim-autopairs + :config (fn [] + (require :config.autopairs)) + :event :BufWinEnter} + {1 :windwp/nvim-spectre + :config (fn [] + (require :config.spectre)) + :event :BufWinEnter}]) + +(def misc [{1 :nvim-orgmode/orgmode + :config (fn [] + (require :config.window-picker)) + :event :BufWinEnter} + {1 :akinsho/toggleterm.nvim + :config (fn [] + (require :config.toggleterm)) + :event :BufWinEnter} + {1 :dstein64/vim-startuptime}]) + +(def all {: core + : completions + : git + : search + : snippets + : lsp + : color + : ui + : session + : text + : misc}) diff --git a/fnl/util.fnl b/fnl/util.fnl deleted file mode 100644 index 88ec1c3..0000000 --- a/fnl/util.fnl +++ /dev/null @@ -1,43 +0,0 @@ -;; Utility functions. -(module util {autoload {a aniseed.core nvim aniseed.nvim : packer}}) - -(def- path (.. (vim.fn.stdpath :data) :/site/pack/packer/start)) - -(def- installed-plugins (vim.fn.readdir path)) - -(def- configured-plugins (require :plugins)) - -(defn- parse-plugins-names [plugins] (var names []) - (each [plugin _ (pairs plugins)] - (table.insert names (string.match plugin "/(.*)"))) names) - -(defn- contains [ys xs] (var equal true) - (each [_ x (pairs xs)] - (if (not= (vim.tbl_contains ys x) true) - (set equal false))) equal) - -(defn- deep-equal [xs ys] (and (contains xs ys) (contains ys xs))) - -(defn- synchronized [configured installed] (deep-equal configured installed)) - -(defn- install [] - (packer.startup (fn [use] - (each [plugin opts (pairs configured-plugins)] - (use (a.assoc opts 1 plugin)))))) - -(defn load-plugins [] (install) - (if (not= (synchronized (parse-plugins-names configured-plugins) - installed-plugins) true) - (packer.sync) - (require :config))) - -(defn load-plugin [name] - (let [(ok? plugin) (pcall require name)] - (if ok? - plugin - (vim.notify (.. "Could not load config: " val-or-err) - vim.log.levels.WARN)))) - -(defn use-config [plugin config] - (let [plugin (load-plugin plugin)] - (plugin.setup config))) diff --git a/init.lua b/init.lua index 455a818..03e828b 100644 --- a/init.lua +++ b/init.lua @@ -3,10 +3,12 @@ local fn = vim.fn local fmt = string.format local execute = vim.api.nvim_command local packer_path = fn.stdpath "data" .. "/site/pack/packer/start" +local sync = false local function ensure(user, repository) local path = fmt("%s/%s", packer_path, repository) if fn.empty(fn.glob(path)) > 0 then + sync = true execute( fmt("!git clone --depth 1 https://github.com/%s/%s %s", user, repository, path) ) @@ -18,6 +20,10 @@ ensure("wbthomason", "packer.nvim") ensure("Olical", "aniseed") ensure("lewis6991", "impatient.nvim") +if sync then + require("packer").sync() +end + require "impatient" vim.g["aniseed#env"] = { -- cgit v1.2.3-70-g09d2 From f3cb0e4fe65516137e84d6ccc54807cb96e6ef28 Mon Sep 17 00:00:00 2001 From: Gustaf Rydholm Date: Sun, 16 Oct 2022 01:54:52 +0200 Subject: Update diff keymaps --- fnl/config/which-key.fnl | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) (limited to 'fnl/config') diff --git a/fnl/config/which-key.fnl b/fnl/config/which-key.fnl index 759166c..2fa2d5b 100644 --- a/fnl/config/which-key.fnl +++ b/fnl/config/which-key.fnl @@ -35,17 +35,14 @@ :noremap true :nowait true}) -(def- diff {:name :Diff - :m ["Gitsigns diffthis HEAD" "Gitsigns diff"] - :n [:DiffviewFileHistory :DiffviewFileHistory] - :e ["DiffviewOpen -uno" :DiffviewOpen] - :i [:DiffviewClose :DiffviewClose]}) - (def- mmappings {:a ["lua require('harpoon.mark').add_file()" :Harpoon] :b ["lua require('telescope.builtin').buffers(require('telescope.themes').get_dropdown{sort_lastused = true, initial_mode = 'normal', previewer = false})" "Switch buffers"] - :d diff + :c [:DiffviewClose :DiffviewClose] + :d [:DiffviewFileHistory :DiffviewFileHistory] + :x ["DiffviewOpen -uno" :DiffviewOpen] + :q ["Gitsigns diffthis HEAD" "Gitsigns diff"] :f ["lua require('telescope.builtin').find_files(require('telescope.themes').get_dropdown{previewer = false})" "Find files"] :g ["Telescope live_grep theme=ivy" "Find text"] -- cgit v1.2.3-70-g09d2 From b59f9a12f4799849802c17cf517cd6c76cf57122 Mon Sep 17 00:00:00 2001 From: Gustaf Rydholm Date: Sun, 16 Oct 2022 02:32:33 +0200 Subject: Fix orgmode --- fnl/config/cmp.fnl | 1 + fnl/config/which-key.fnl | 4 ++-- fnl/plugins.fnl | 3 ++- 3 files changed, 5 insertions(+), 3 deletions(-) (limited to 'fnl/config') diff --git a/fnl/config/cmp.fnl b/fnl/config/cmp.fnl index 73ebba4..24115d7 100644 --- a/fnl/config/cmp.fnl +++ b/fnl/config/cmp.fnl @@ -26,6 +26,7 @@ {:name :nvim_lua} {:name :luasnip} {:name :spell} + {:name :orgmode} {:name :buffer :keyword_length 4} {:name :path :keyword_length 6}] :formatting {:format (lspkind.cmp_format {:with_text true diff --git a/fnl/config/which-key.fnl b/fnl/config/which-key.fnl index 2fa2d5b..fdd76b5 100644 --- a/fnl/config/which-key.fnl +++ b/fnl/config/which-key.fnl @@ -117,9 +117,9 @@ "Workspace Symbols"]}) (def- org {:name :Orgmode - :a ["lua require('orgmode').action('agenda.prompt')" + :a ["lua require('orgmode').action('agenda.prompt')" "Open agenda prompt"] - :c ["lua require('orgmode').action('capture.prompt')" + :c ["lua require('orgmode').action('capture.prompt')" "Open capture prompt"]}) (def- packer {:name :Packer diff --git a/fnl/plugins.fnl b/fnl/plugins.fnl index 1c05b5a..6527ed9 100644 --- a/fnl/plugins.fnl +++ b/fnl/plugins.fnl @@ -80,7 +80,8 @@ (def misc [{1 :nvim-orgmode/orgmode :config (fn [] - (require :config.window-picker)) + (require :config.orgmode)) + :requires :nvim-treesitter/nvim-treesitter :event :BufWinEnter} {1 :akinsho/toggleterm.nvim :config (fn [] -- cgit v1.2.3-70-g09d2 From 336c4378f801bddd54440f3b8165a0f636702ef8 Mon Sep 17 00:00:00 2001 From: Gustaf Rydholm Date: Sun, 16 Oct 2022 02:58:07 +0200 Subject: Add frecency, fix plenary --- fnl/config/telescope.fnl | 1 + fnl/plugins.fnl | 10 +++++++--- 2 files changed, 8 insertions(+), 3 deletions(-) (limited to 'fnl/config') diff --git a/fnl/config/telescope.fnl b/fnl/config/telescope.fnl index 8f0459f..c46b0fb 100644 --- a/fnl/config/telescope.fnl +++ b/fnl/config/telescope.fnl @@ -79,4 +79,5 @@ (telescope.load_extension :file_browser) (telescope.load_extension :session-lens) (telescope.load_extension :harpoon) + (telescope.load_extension :frecency) (telescope.load_extension :projects))) diff --git a/fnl/plugins.fnl b/fnl/plugins.fnl index 6527ed9..e7ab83a 100644 --- a/fnl/plugins.fnl +++ b/fnl/plugins.fnl @@ -91,17 +91,21 @@ (def search [{1 :nvim-telescope/telescope-file-browser.nvim} {1 :nvim-telescope/telescope-fzf-native.nvim :run :make} + {1 :nvim-telescope/telescope-frecency.nvim + :requires :tami5/sqlite.lua} {1 :nvim-telescope/telescope.nvim :config (fn [] (require :config.telescope)) :requires [:nvim-lua/popup.nvim - :nvim-lua/plenary + :nvim-lua/plenary.nvim :telescope-fzf-native.nvim - :telescope-file-browser.nvim] + :telescope-file-browser.nvim + :telescope-frecency.nvim] :wants [:popup.nvim :plenary.nvim :telescope-fzf-native.nvim - :telescope-file-browser.nvim]} + :telescope-file-browser.nvim + :telescope-frecency.nvim]} {1 :ggandor/leap.nvim :config (fn [] (require :config.leap)) -- cgit v1.2.3-70-g09d2 From 97335fff57e4cca08bf642d65791c5c18ce8b485 Mon Sep 17 00:00:00 2001 From: Gustaf Rydholm Date: Sun, 16 Oct 2022 11:49:15 +0200 Subject: Remove telescope file browser --- fnl/config/telescope.fnl | 1 - fnl/plugins.fnl | 13 +++---------- 2 files changed, 3 insertions(+), 11 deletions(-) (limited to 'fnl/config') diff --git a/fnl/config/telescope.fnl b/fnl/config/telescope.fnl index c46b0fb..5c79501 100644 --- a/fnl/config/telescope.fnl +++ b/fnl/config/telescope.fnl @@ -76,7 +76,6 @@ :override_file_sorter true :case_mode :smart_case}}}) (telescope.load_extension :fzf) - (telescope.load_extension :file_browser) (telescope.load_extension :session-lens) (telescope.load_extension :harpoon) (telescope.load_extension :frecency) diff --git a/fnl/plugins.fnl b/fnl/plugins.fnl index e7ab83a..2b7fe15 100644 --- a/fnl/plugins.fnl +++ b/fnl/plugins.fnl @@ -89,8 +89,7 @@ :event :BufWinEnter} {1 :dstein64/vim-startuptime}]) -(def search [{1 :nvim-telescope/telescope-file-browser.nvim} - {1 :nvim-telescope/telescope-fzf-native.nvim :run :make} +(def search [{1 :nvim-telescope/telescope-fzf-native.nvim :run :make} {1 :nvim-telescope/telescope-frecency.nvim :requires :tami5/sqlite.lua} {1 :nvim-telescope/telescope.nvim @@ -98,14 +97,8 @@ (require :config.telescope)) :requires [:nvim-lua/popup.nvim :nvim-lua/plenary.nvim - :telescope-fzf-native.nvim - :telescope-file-browser.nvim - :telescope-frecency.nvim] - :wants [:popup.nvim - :plenary.nvim - :telescope-fzf-native.nvim - :telescope-file-browser.nvim - :telescope-frecency.nvim]} + :nvim-telescope/telescope-fzf-native.nvim + :nvim-telescope/telescope-frecency.nvim]} {1 :ggandor/leap.nvim :config (fn [] (require :config.leap)) -- cgit v1.2.3-70-g09d2 From 3f1367c3a460f89cafc80f134fbf420543ffb5e6 Mon Sep 17 00:00:00 2001 From: Gustaf Rydholm Date: Sun, 16 Oct 2022 11:49:45 +0200 Subject: Remove colon for util autoload --- fnl/config/auto-session.fnl | 2 +- fnl/config/autocmd.fnl | 9 ++++++++- fnl/config/autopairs.fnl | 2 +- fnl/config/better-escape.fnl | 2 +- fnl/config/bqf.fnl | 2 +- fnl/config/cmp.fnl | 2 +- fnl/config/colorizer.fnl | 2 +- fnl/config/colorscheme.fnl | 2 +- fnl/config/comment.fnl | 2 +- fnl/config/diffview.fnl | 2 +- fnl/config/fidget.fnl | 2 +- fnl/config/flit.fnl | 2 +- fnl/config/gitsigns.fnl | 2 +- fnl/config/harpoon.fnl | 2 +- fnl/config/leap.fnl | 2 +- fnl/config/lir.fnl | 2 +- fnl/config/lsp/handlers.fnl | 2 +- fnl/config/lsp/mason-lspconfig.fnl | 2 +- fnl/config/lsp/mason-null-ls.fnl | 2 +- fnl/config/lsp/mason.fnl | 2 +- fnl/config/lsp/null-ls.fnl | 2 +- fnl/config/lsp/settings/jsonls.fnl | 2 +- fnl/config/lualine.fnl | 2 +- fnl/config/minibar.fnl | 2 +- fnl/config/neogit.fnl | 2 +- fnl/config/orgmode.fnl | 2 +- fnl/config/packer.fnl | 2 +- fnl/config/project.fnl | 2 +- fnl/config/spectre.fnl | 2 +- fnl/config/stabilize.fnl | 2 +- fnl/config/stay-in-place.fnl | 2 +- fnl/config/surround.fnl | 2 +- fnl/config/telescope.fnl | 2 +- fnl/config/toggleterm.fnl | 2 +- fnl/config/treesitter.fnl | 2 +- fnl/config/trim.fnl | 2 +- fnl/config/trouble.fnl | 2 +- fnl/config/which-key.fnl | 2 +- fnl/config/window-picker.fnl | 2 +- fnl/config/zen.fnl | 2 +- fnl/plugins.fnl | 2 -- 41 files changed, 47 insertions(+), 42 deletions(-) (limited to 'fnl/config') diff --git a/fnl/config/auto-session.fnl b/fnl/config/auto-session.fnl index 35a43a9..0ac88ce 100644 --- a/fnl/config/auto-session.fnl +++ b/fnl/config/auto-session.fnl @@ -1,5 +1,5 @@ ;; Session manager. -(module config.auto-session {autoload {:util :config.util}}) +(module config.auto-session {autoload {util config.util}}) (def- auto-opts {:log_level :info :auto_session_enable_last_session false diff --git a/fnl/config/autocmd.fnl b/fnl/config/autocmd.fnl index 24adcad..4194e66 100644 --- a/fnl/config/autocmd.fnl +++ b/fnl/config/autocmd.fnl @@ -2,7 +2,8 @@ (module config.autocmd {autoload {nvim aniseed.nvim env aniseed.env a aniseed.core - :util :config.util}}) + : packer + util config.util}}) (defn create-autocmd [event opts] (nvim.create_autocmd event opts)) @@ -36,3 +37,9 @@ {:pattern :*.fnl :callback (lambda [] (env.init nvim.g.aniseed#env))}) + +(create-autocmd :BufWritePost + {:pattern :plugins.fnl + :callback (lambda [] + (env.init nvim.g.aniseed#env) + (packer.sync))}) diff --git a/fnl/config/autopairs.fnl b/fnl/config/autopairs.fnl index 6918c40..d7865b5 100644 --- a/fnl/config/autopairs.fnl +++ b/fnl/config/autopairs.fnl @@ -1,5 +1,5 @@ ;; Autopairs for brackets and quote symbols. -(module config.autopairs {autoload {:util :config.util}}) +(module config.autopairs {autoload {util config.util}}) (def- opts {:check_ts true :ts_config {:lua [:string :source] diff --git a/fnl/config/better-escape.fnl b/fnl/config/better-escape.fnl index 3e68ddd..659d22f 100644 --- a/fnl/config/better-escape.fnl +++ b/fnl/config/better-escape.fnl @@ -1,5 +1,5 @@ ;; Better escape without nasty delay. -(module config.better-escape {autoload {:util :config.util}}) +(module config.better-escape {autoload {util config.util}}) (def- opts {:mapping [:kk :jj] :timeout vim.o.timeoutlen diff --git a/fnl/config/bqf.fnl b/fnl/config/bqf.fnl index 4c877a1..59a1aad 100644 --- a/fnl/config/bqf.fnl +++ b/fnl/config/bqf.fnl @@ -1,4 +1,4 @@ ;; Make Neovim's quickfix window better. -(module config.bqf {autoload {:util :config.util}}) +(module config.bqf {autoload {util config.util}}) (util.setup :bqf {}) diff --git a/fnl/config/cmp.fnl b/fnl/config/cmp.fnl index 24115d7..78e6304 100644 --- a/fnl/config/cmp.fnl +++ b/fnl/config/cmp.fnl @@ -1,5 +1,5 @@ ;; Configuration for completion plugin. -(module config.cmp {autoload {nvim aniseed.nvim :util :config.util}}) +(module config.cmp {autoload {nvim aniseed.nvim util config.util}}) (let [cmp (util.prequire :cmp) lspkind (util.prequire :lspkind) diff --git a/fnl/config/colorizer.fnl b/fnl/config/colorizer.fnl index 8358f0b..ff7fbab 100644 --- a/fnl/config/colorizer.fnl +++ b/fnl/config/colorizer.fnl @@ -1,4 +1,4 @@ ;; Enables colorization of color codes in source files. -(module config.colorizer {autoload {:util :config.util}}) +(module config.colorizer {autoload {util config.util}}) (util.setup :colorizer {}) diff --git a/fnl/config/colorscheme.fnl b/fnl/config/colorscheme.fnl index 50317c7..b4fbf1f 100644 --- a/fnl/config/colorscheme.fnl +++ b/fnl/config/colorscheme.fnl @@ -1,5 +1,5 @@ ;; Load neovim colorscheme. -(module config.colorscheme {autoload {:util :config.util}}) +(module config.colorscheme {autoload {util config.util}}) (local colorscheme :no-clown-fiesta) diff --git a/fnl/config/comment.fnl b/fnl/config/comment.fnl index 1b896f4..3a3f1fb 100644 --- a/fnl/config/comment.fnl +++ b/fnl/config/comment.fnl @@ -1,5 +1,5 @@ ;; Language aware commenting. -(module config.comment {autoload {:util :config.util}}) +(module config.comment {autoload {util config.util}}) (def- opts {}) diff --git a/fnl/config/diffview.fnl b/fnl/config/diffview.fnl index a4fed9d..3772d32 100644 --- a/fnl/config/diffview.fnl +++ b/fnl/config/diffview.fnl @@ -1,5 +1,5 @@ ;; Trim whitespaces on save. -(module config.diffview {autoload {:util :config.util}}) +(module config.diffview {autoload {util config.util}}) (def- opts {}) diff --git a/fnl/config/fidget.fnl b/fnl/config/fidget.fnl index 3c66990..1b9ca81 100644 --- a/fnl/config/fidget.fnl +++ b/fnl/config/fidget.fnl @@ -1,5 +1,5 @@ ;; Show lsp progress. -(module config.fidget {autoload {:util :config.util}}) +(module config.fidget {autoload {util config.util}}) (def- opts {:text {:spinner :dots_snake}}) diff --git a/fnl/config/flit.fnl b/fnl/config/flit.fnl index 6a769f0..d80a0d9 100644 --- a/fnl/config/flit.fnl +++ b/fnl/config/flit.fnl @@ -1,5 +1,5 @@ ;; fFtT motions on roids. -(module config.flit {autoload {:util :config.util nvim aniseed.nvim}}) +(module config.flit {autoload {util config.util nvim aniseed.nvim}}) (def- opts {:keys {:f :f :F :F :t :t :T :T} :labeled_modes :v diff --git a/fnl/config/gitsigns.fnl b/fnl/config/gitsigns.fnl index 43f831e..663e3e0 100644 --- a/fnl/config/gitsigns.fnl +++ b/fnl/config/gitsigns.fnl @@ -1,5 +1,5 @@ ;; Add git signs to source files. -(module config.gitsigns {autoload {:util :config.util}}) +(module config.gitsigns {autoload {util config.util}}) (def- signs {:add {:hl :GitSignsAdd :text "|" diff --git a/fnl/config/harpoon.fnl b/fnl/config/harpoon.fnl index 71c3798..122f045 100644 --- a/fnl/config/harpoon.fnl +++ b/fnl/config/harpoon.fnl @@ -1,5 +1,5 @@ ;; Harpoon files for navigation. -(module config.harpoon {autoload {:util :config.util nvim aniseed.nvim}}) +(module config.harpoon {autoload {util config.util nvim aniseed.nvim}}) (def- opts {}) diff --git a/fnl/config/leap.fnl b/fnl/config/leap.fnl index 541b0e0..868f9eb 100644 --- a/fnl/config/leap.fnl +++ b/fnl/config/leap.fnl @@ -1,5 +1,5 @@ ;; Leap through text. -(module config.leap {autoload {:util :config.util nvim aniseed.nvim}}) +(module config.leap {autoload {util config.util nvim aniseed.nvim}}) (def- opts {}) diff --git a/fnl/config/lir.fnl b/fnl/config/lir.fnl index 8f9058c..45fb052 100644 --- a/fnl/config/lir.fnl +++ b/fnl/config/lir.fnl @@ -1,5 +1,5 @@ ;; Simple file manager. -(module config.lir {autoload {:util :config.util nvim aniseed.nvim}}) +(module config.lir {autoload {util config.util nvim aniseed.nvim}}) (defn- opts [actions mark-actions clipboard-actions] {:show_hidden_files false diff --git a/fnl/config/lsp/handlers.fnl b/fnl/config/lsp/handlers.fnl index 913a5a2..c9b7825 100644 --- a/fnl/config/lsp/handlers.fnl +++ b/fnl/config/lsp/handlers.fnl @@ -1,5 +1,5 @@ ;; Handlers for the requests and responses from and to the lsp server. -(module config.lsp.handlers {autoload {:util :config.util nvim aniseed.nvim}}) +(module config.lsp.handlers {autoload {util config.util nvim aniseed.nvim}}) (def- signs [{:name :DiagnosticSignError :text ""} {:name :DiagnosticSignWarn :text ""} diff --git a/fnl/config/lsp/mason-lspconfig.fnl b/fnl/config/lsp/mason-lspconfig.fnl index 7a03ced..130fc17 100644 --- a/fnl/config/lsp/mason-lspconfig.fnl +++ b/fnl/config/lsp/mason-lspconfig.fnl @@ -1,5 +1,5 @@ ;; TBD -(module config.lsp.mason-lspconfig {autoload {:util :config.util}}) +(module config.lsp.mason-lspconfig {autoload {util config.util}}) (def- servers [:bashls :clangd diff --git a/fnl/config/lsp/mason-null-ls.fnl b/fnl/config/lsp/mason-null-ls.fnl index e739b9b..33cf93f 100644 --- a/fnl/config/lsp/mason-null-ls.fnl +++ b/fnl/config/lsp/mason-null-ls.fnl @@ -1,5 +1,5 @@ ;; Ensure that tools needed for null-ls are installed. -(module config.mason-null-ls {autoload {:util :config.util}}) +(module config.mason-null-ls {autoload {util config.util}}) (def- opts {:ensure_installed [:flake8 :golangci-lint diff --git a/fnl/config/lsp/mason.fnl b/fnl/config/lsp/mason.fnl index 7c58d94..adc60a4 100644 --- a/fnl/config/lsp/mason.fnl +++ b/fnl/config/lsp/mason.fnl @@ -1,5 +1,5 @@ ;; Mason manages external tooling, e.g. lsp, formatters, and linters. -(module config.lsp.mason {autoload {:util :config.util}}) +(module config.lsp.mason {autoload {util config.util}}) (def- opts {:ui {:icons {:package_installed "✓" :package_pending "➜" diff --git a/fnl/config/lsp/null-ls.fnl b/fnl/config/lsp/null-ls.fnl index 7efb079..7ebd25e 100644 --- a/fnl/config/lsp/null-ls.fnl +++ b/fnl/config/lsp/null-ls.fnl @@ -1,5 +1,5 @@ ;; Adds LSP diagnostics and formatting. -(module config.lsp.null-ls {autoload {:util :config.util}}) +(module config.lsp.null-ls {autoload {util config.util}}) (let [null-ls (util.prequire :null-ls)] (let [formatting null-ls.builtins.formatting diff --git a/fnl/config/lsp/settings/jsonls.fnl b/fnl/config/lsp/settings/jsonls.fnl index 3fe9299..55c6115 100644 --- a/fnl/config/lsp/settings/jsonls.fnl +++ b/fnl/config/lsp/settings/jsonls.fnl @@ -1,5 +1,5 @@ ;; Json schema store catalog language server. -(module config.lsp.settings.jsonls {autoload {:util :config.util}}) +(module config.lsp.settings.jsonls {autoload {util config.util}}) (let [schemastore (util.prequire :schemastore)] {:init_options {:providerFormatter false} diff --git a/fnl/config/lualine.fnl b/fnl/config/lualine.fnl index ee68523..833e68e 100644 --- a/fnl/config/lualine.fnl +++ b/fnl/config/lualine.fnl @@ -1,5 +1,5 @@ ;; Statusbar. -(module config.lualine {autoload {:util :config.util}}) +(module config.lualine {autoload {util config.util}}) (def- disable [:neogitstatus :lir diff --git a/fnl/config/minibar.fnl b/fnl/config/minibar.fnl index 21d687a..8f0e792 100644 --- a/fnl/config/minibar.fnl +++ b/fnl/config/minibar.fnl @@ -1,4 +1,4 @@ -(module config.minibar {autoload {:util :config.util}}) +(module config.minibar {autoload {util config.util}}) (def- opts {:ignore-filetypes [:help :startify diff --git a/fnl/config/neogit.fnl b/fnl/config/neogit.fnl index aab1291..2d9f515 100644 --- a/fnl/config/neogit.fnl +++ b/fnl/config/neogit.fnl @@ -1,4 +1,4 @@ ;; UI for git. -(module config.neogit {autoload {:util :config.util}}) +(module config.neogit {autoload {util config.util}}) (util.setup :neogit {}) diff --git a/fnl/config/orgmode.fnl b/fnl/config/orgmode.fnl index af3d705..a21eaa0 100644 --- a/fnl/config/orgmode.fnl +++ b/fnl/config/orgmode.fnl @@ -1,5 +1,5 @@ ;; Orgmode for nvim. -(module config.orgmode {autoload {nvim aniseed.nvim :util :config.util}}) +(module config.orgmode {autoload {nvim aniseed.nvim util config.util}}) (nvim.ex.set :conceallevel=2) (nvim.ex.set :concealcursor=nc) diff --git a/fnl/config/packer.fnl b/fnl/config/packer.fnl index b8ab91a..f4f44cc 100644 --- a/fnl/config/packer.fnl +++ b/fnl/config/packer.fnl @@ -1,5 +1,5 @@ ;; Load packer config -(module config.packer {autoload {:util :config.util}}) +(module config.packer {autoload {util config.util}}) (let [packer (util.prequire :packer) packer-util (require :packer.util)] diff --git a/fnl/config/project.fnl b/fnl/config/project.fnl index 1c97527..1617ca5 100644 --- a/fnl/config/project.fnl +++ b/fnl/config/project.fnl @@ -1,5 +1,5 @@ ;; Provides project management. -(module config.project {autoload {:util :config.util}}) +(module config.project {autoload {util config.util}}) (def- opts {:active true :on_config_done nil diff --git a/fnl/config/spectre.fnl b/fnl/config/spectre.fnl index 337beb1..f0afa52 100644 --- a/fnl/config/spectre.fnl +++ b/fnl/config/spectre.fnl @@ -1,5 +1,5 @@ ;; Find and replace. -(module config.spectre {autoload {:util :config.util}}) +(module config.spectre {autoload {util config.util}}) (def- opts {:color_devicons true :highlight {:ui :String :search :DiffChange :replace :DiffDelete} diff --git a/fnl/config/stabilize.fnl b/fnl/config/stabilize.fnl index 59b7c5d..5ac2a7f 100644 --- a/fnl/config/stabilize.fnl +++ b/fnl/config/stabilize.fnl @@ -1,5 +1,5 @@ ;; Stabilize window open/close events. -(module config.stabilize {autoload {:util :config.util}}) +(module config.stabilize {autoload {util config.util}}) (def- opts {:force true ;; stabilize window even when current cursor position will be hidden behind new window diff --git a/fnl/config/stay-in-place.fnl b/fnl/config/stay-in-place.fnl index 1c19399..be3ccd3 100644 --- a/fnl/config/stay-in-place.fnl +++ b/fnl/config/stay-in-place.fnl @@ -1,4 +1,4 @@ ;; Prevent the cursor from moving when using shift and filter actions. -(module config.stay-in-place {autoload {:util :config.util}}) +(module config.stay-in-place {autoload {util config.util}}) (util.setup :stay-in-place {}) diff --git a/fnl/config/surround.fnl b/fnl/config/surround.fnl index 8a3aad9..2406ecd 100644 --- a/fnl/config/surround.fnl +++ b/fnl/config/surround.fnl @@ -1,5 +1,5 @@ ;; Surround selections. -(module config.surround {autoload {:util :config.util}}) +(module config.surround {autoload {util config.util}}) (def- opts {}) diff --git a/fnl/config/telescope.fnl b/fnl/config/telescope.fnl index 5c79501..dc58b01 100644 --- a/fnl/config/telescope.fnl +++ b/fnl/config/telescope.fnl @@ -1,5 +1,5 @@ ;; Telescope a highly extendable fuzzy finder over lists. -(module config.telescope {autoload {:util :config.util nvim aniseed.nvim}}) +(module config.telescope {autoload {util config.util nvim aniseed.nvim}}) (def- opts {:noremap true :silent true}) diff --git a/fnl/config/toggleterm.fnl b/fnl/config/toggleterm.fnl index 2a1a462..dd561f3 100644 --- a/fnl/config/toggleterm.fnl +++ b/fnl/config/toggleterm.fnl @@ -1,6 +1,6 @@ ;; Terminal inside nvim. (module config.toggleterm - {autoload {:util :config.util nvim aniseed.nvim autocmd config.autocmd}}) + {autoload {util config.util nvim aniseed.nvim autocmd config.autocmd}}) (def- opts {:size 16 :shade_terminals false}) diff --git a/fnl/config/treesitter.fnl b/fnl/config/treesitter.fnl index 058182d..e61e2c0 100644 --- a/fnl/config/treesitter.fnl +++ b/fnl/config/treesitter.fnl @@ -1,6 +1,6 @@ ;; Treesitter is a tool for building syntax trees for source files. ;; In the neovim context it helps with better coloring. -(module config.treesitter {autoload {:util :config.util}}) +(module config.treesitter {autoload {util config.util}}) (def- opts {:ensure_installed [:c :rust diff --git a/fnl/config/trim.fnl b/fnl/config/trim.fnl index ee699fb..8a2ec43 100644 --- a/fnl/config/trim.fnl +++ b/fnl/config/trim.fnl @@ -1,5 +1,5 @@ ;; Trim whitespaces on save. -(module config.trim {autoload {:util :config.util}}) +(module config.trim {autoload {util config.util}}) (def- opts {:disable [:python]}) diff --git a/fnl/config/trouble.fnl b/fnl/config/trouble.fnl index 0266ec0..b45fecd 100644 --- a/fnl/config/trouble.fnl +++ b/fnl/config/trouble.fnl @@ -1,5 +1,5 @@ ;; Pretty diagnostics. -(module config.trouble {autoload {:util :config.util}}) +(module config.trouble {autoload {util config.util}}) (def- opts {:position :bottom ;; position of the list can be: bottom, top, left, right diff --git a/fnl/config/which-key.fnl b/fnl/config/which-key.fnl index fdd76b5..2b5ea9d 100644 --- a/fnl/config/which-key.fnl +++ b/fnl/config/which-key.fnl @@ -1,5 +1,5 @@ ;; Which-key provides a pop-up meny for some key mappings. -(module config.which-key {autoload {:util :config.util nvim aniseed.nvim}}) +(module config.which-key {autoload {util config.util nvim aniseed.nvim}}) (def- setup {:plugins {:marks true :registers true diff --git a/fnl/config/window-picker.fnl b/fnl/config/window-picker.fnl index 268e952..76a11f5 100644 --- a/fnl/config/window-picker.fnl +++ b/fnl/config/window-picker.fnl @@ -1,5 +1,5 @@ ;; Trim whitespaces on save. -(module config.window-picker {autoload {:util :config.util}}) +(module config.window-picker {autoload {util config.util}}) (def- opts {:other_win_hl_color "#171717" :fg_color "#E1E1E1" diff --git a/fnl/config/zen.fnl b/fnl/config/zen.fnl index df90661..a7dbe6a 100644 --- a/fnl/config/zen.fnl +++ b/fnl/config/zen.fnl @@ -1,5 +1,5 @@ ;; Zen mode. -(module config.zen {autoload {:util :config.util}}) +(module config.zen {autoload {util config.util}}) (def- opts {:window {:backdrop 1 :height 0.8 diff --git a/fnl/plugins.fnl b/fnl/plugins.fnl index 2b7fe15..3696598 100644 --- a/fnl/plugins.fnl +++ b/fnl/plugins.fnl @@ -49,8 +49,6 @@ :event :BufWinEnter :config (fn [] (require :config.fidget))} - {1 :jose-elias-alvarez/null-ls.nvim} - {1 :neovim/nvim-lspconfig} {1 :williamboman/mason.nvim :event :BufWinEnter :config (fn [] -- cgit v1.2.3-70-g09d2 From 9e52a45f148156405a2d563d59710d18e5fe31b1 Mon Sep 17 00:00:00 2001 From: Gustaf Rydholm Date: Sun, 16 Oct 2022 12:14:52 +0200 Subject: Remove util import in autocmd --- fnl/config/autocmd.fnl | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'fnl/config') diff --git a/fnl/config/autocmd.fnl b/fnl/config/autocmd.fnl index 4194e66..84d9e66 100644 --- a/fnl/config/autocmd.fnl +++ b/fnl/config/autocmd.fnl @@ -2,8 +2,7 @@ (module config.autocmd {autoload {nvim aniseed.nvim env aniseed.env a aniseed.core - : packer - util config.util}}) + : packer}}) (defn create-autocmd [event opts] (nvim.create_autocmd event opts)) -- cgit v1.2.3-70-g09d2 From ec825863530260d008350e051873a03ceb031de3 Mon Sep 17 00:00:00 2001 From: Gustaf Rydholm Date: Sun, 16 Oct 2022 14:06:08 +0200 Subject: Add undotree and remove lir --- fnl/config/autocmd.fnl | 9 --------- fnl/config/lir.fnl | 44 -------------------------------------------- fnl/config/which-key.fnl | 1 + fnl/plugins.fnl | 7 ++----- fnl/settings/keymaps.fnl | 1 + fnl/settings/options.fnl | 3 +++ 6 files changed, 7 insertions(+), 58 deletions(-) delete mode 100644 fnl/config/lir.fnl (limited to 'fnl/config') diff --git a/fnl/config/autocmd.fnl b/fnl/config/autocmd.fnl index 84d9e66..9bd59cc 100644 --- a/fnl/config/autocmd.fnl +++ b/fnl/config/autocmd.fnl @@ -18,18 +18,9 @@ (create-autocmd :FileType {:pattern :qf :command "set nobuflisted"}) -(create-autocmd :FileType {:pattern :lir - :callback (fn [] - (tset vim.opt_local :number false) - (tset vim.opt_local :relativenumber - false))}) - (create-autocmd :FileType {:pattern [:gitcommit :markdown] :command "setlocal wrap"}) -(create-autocmd :FileType {:pattern [:gitcommit :markdown :org :plaintex] - :command "setlocal spell"}) - (create-autocmd :VimResized {:command "tabdo wincmd ="}) (create-autocmd :BufWritePost diff --git a/fnl/config/lir.fnl b/fnl/config/lir.fnl deleted file mode 100644 index 45fb052..0000000 --- a/fnl/config/lir.fnl +++ /dev/null @@ -1,44 +0,0 @@ -;; Simple file manager. -(module config.lir {autoload {util config.util nvim aniseed.nvim}}) - -(defn- opts [actions mark-actions clipboard-actions] - {:show_hidden_files false - :devicons_enable true - :mappings {:l actions.edit - : actions.split - :v actions.vsplit - : actions.tabedit - :h actions.up - :q actions.quit - :A actions.mkdir - :a actions.newfile - :r actions.rename - "@" actions.cd - :Y actions.yank_path - :i actions.toggle_show_hidden - :d actions.delete - :J (fn [] - (mark-actions.toggle_mark) - (vim.cmd "normal! j")) - :c clipboard-actions.copy - :x clipboard-actions.cut - :p clipboard-actions.paste} - :float {:winblend 0 - :curdir_window {:enable false :highlight_dirname true} - :win_opts (fn [] - (let [width (math.floor (* vim.o.columns 0.7)) - height (math.floor (* vim.o.lines 0.7))] - {:border :rounded : width : height}))} - :hide_cursor false - :on_init (fn [] - (nvim.buf_set_keymap 0 :x :J - ":lua require(\"lir.mark.actions\").toggle_mark(\"v\")" - {:noremap true :silent true}))}) - -(let [lir (util.prequire :lir)] - (let [actions (require :lir.actions) - mark-actions (require :lir.mark.actions) - clipboard-actions (require :lir.clipboard.actions)] - (lir.setup (opts actions mark-actions clipboard-actions)) - (nvim.set_keymap :n "-" ":lua require'lir.float'.toggle()" - {:noremap true :silent true}))) diff --git a/fnl/config/which-key.fnl b/fnl/config/which-key.fnl index 2b5ea9d..477c23b 100644 --- a/fnl/config/which-key.fnl +++ b/fnl/config/which-key.fnl @@ -158,6 +158,7 @@ :o org :p packer :r replace + :u [:UndotreeToggle "Undotree"] :s [switch-window "Switch window"] :t [:ToggleTerm :Terminal] :T treesitter diff --git a/fnl/plugins.fnl b/fnl/plugins.fnl index 3696598..4c972a2 100644 --- a/fnl/plugins.fnl +++ b/fnl/plugins.fnl @@ -109,10 +109,6 @@ {1 :ahmedkhalf/project.nvim :config (fn [] (require :config.project))} - {1 :tamago324/lir.nvim - :config (fn [] - (require :config.lir)) - :requires [:kyazdani42/nvim-web-devicons]} {1 :ThePrimeagen/harpoon :config (fn [] (require :config.harpoon))}]) @@ -156,7 +152,8 @@ {1 :windwp/nvim-spectre :config (fn [] (require :config.spectre)) - :event :BufWinEnter}]) + :event :BufWinEnter} + {1 :mbbill/undotree :event :BufWinEnter}]) (def ui [{1 :nvim-lualine/lualine.nvim :event :BufWinEnter diff --git a/fnl/settings/keymaps.fnl b/fnl/settings/keymaps.fnl index 85e5a76..83b9917 100644 --- a/fnl/settings/keymaps.fnl +++ b/fnl/settings/keymaps.fnl @@ -47,3 +47,4 @@ (map :n : :nohlsearch opts) (map :n :Q ":q" opts) +(map :n "-" ":Explore" opts) diff --git a/fnl/settings/options.fnl b/fnl/settings/options.fnl index 0a1a254..bc82be7 100644 --- a/fnl/settings/options.fnl +++ b/fnl/settings/options.fnl @@ -88,3 +88,6 @@ (nvim.ex.set :formatoptions-=cro) (nvim.ex.set :colorcolumn=80) (nvim.ex.set :shortmess+=c) +(set vim.g.netrw_browse_split 0) +(set vim.g.netrw_banner 0) +(set vim.g.netrw_winsize 25) -- cgit v1.2.3-70-g09d2 From ae2d8b586d2781e88e6ca6c78e3494ba6b03992f Mon Sep 17 00:00:00 2001 From: Gustaf Rydholm Date: Sun, 16 Oct 2022 14:13:11 +0200 Subject: Update autocmd spell, remove legacy stuff in minibar --- fnl/config/autocmd.fnl | 8 ++++++++ fnl/config/minibar.fnl | 4 ---- 2 files changed, 8 insertions(+), 4 deletions(-) (limited to 'fnl/config') diff --git a/fnl/config/autocmd.fnl b/fnl/config/autocmd.fnl index 9bd59cc..dfdf789 100644 --- a/fnl/config/autocmd.fnl +++ b/fnl/config/autocmd.fnl @@ -21,6 +21,14 @@ (create-autocmd :FileType {:pattern [:gitcommit :markdown] :command "setlocal wrap"}) +(create-autocmd :FileType + {:pattern [:NeogitStatus + :NeogitCommitMessage + :NeogitNotification + :NeogitCommitView + :toggleterm] + :command "setlocal spell!"}) + (create-autocmd :VimResized {:command "tabdo wincmd ="}) (create-autocmd :BufWritePost diff --git a/fnl/config/minibar.fnl b/fnl/config/minibar.fnl index 8f0e792..f64188f 100644 --- a/fnl/config/minibar.fnl +++ b/fnl/config/minibar.fnl @@ -1,14 +1,10 @@ (module config.minibar {autoload {util config.util}}) (def- opts {:ignore-filetypes [:help - :startify :harpoon - :dashboard :packer :neogitstatus :Trouble - :alpha - :lir :org :netrw :Outline -- cgit v1.2.3-70-g09d2 From 9688dab96217ff11d2524bf2340dbd3d976db0b8 Mon Sep 17 00:00:00 2001 From: Gustaf Rydholm Date: Sun, 16 Oct 2022 22:29:02 +0200 Subject: Update which-key with colorizer --- fnl/config/which-key.fnl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'fnl/config') diff --git a/fnl/config/which-key.fnl b/fnl/config/which-key.fnl index 477c23b..2ad2459 100644 --- a/fnl/config/which-key.fnl +++ b/fnl/config/which-key.fnl @@ -151,7 +151,7 @@ :d diagnostics :f find :g git - :h [:Alpha :Alpha] + :h [:ColorizerToggle :Colorizer] :l lsp :n ["lua require('Comment.api').toggle.linewise.current()" :Comment] -- cgit v1.2.3-70-g09d2 From 885552708c0306cd226e7d22fe8a5728bbd951e2 Mon Sep 17 00:00:00 2001 From: Gustaf Rydholm Date: Mon, 17 Oct 2022 00:36:26 +0200 Subject: Fix loading of telescope extensions --- fnl/config/auto-session.fnl | 5 ++++- fnl/config/harpoon.fnl | 22 ++++++++++------------ fnl/config/telescope.fnl | 5 +---- 3 files changed, 15 insertions(+), 17 deletions(-) (limited to 'fnl/config') diff --git a/fnl/config/auto-session.fnl b/fnl/config/auto-session.fnl index 0ac88ce..2e236b2 100644 --- a/fnl/config/auto-session.fnl +++ b/fnl/config/auto-session.fnl @@ -15,6 +15,9 @@ :previewer false :prompt_title :Sessions}) -(set vim.o.sessionoptions "blank,buffers,curdir,folds,help,tabpages,winsize,winpos,terminal") +(set vim.o.sessionoptions + "blank,buffers,curdir,folds,help,tabpages,winsize,winpos,terminal") (util.setup :session-lens lens-opts) (util.setup :auto-session auto-opts) +(let [telescope (require :telescope)] + (telescope.load_extension :session-lens)) diff --git a/fnl/config/harpoon.fnl b/fnl/config/harpoon.fnl index 122f045..21f1b27 100644 --- a/fnl/config/harpoon.fnl +++ b/fnl/config/harpoon.fnl @@ -4,15 +4,13 @@ (def- opts {}) (util.setup :harpoon opts) -(nvim.set_keymap - "n" - "" - "lua require('telescope').extensions.harpoon.marks(require('telescope.themes').get_dropdown{previewer = false, initial_mode='normal', prompt_title='Harpoon'})" - opts -) -(nvim.set_keymap - "n" - "" - "lua require('telescope.builtin').buffers(require('telescope.themes').get_dropdown{previewer = false, initial_mode='normal'})" - opts -) +(let [telescope (require :telescope)] + (telescope.load_extension :harpoon)) + +(nvim.set_keymap :n : + "lua require('telescope').extensions.harpoon.marks(require('telescope.themes').get_dropdown{previewer = false, initial_mode='normal', prompt_title='Harpoon'})" + opts) + +(nvim.set_keymap :n : + "lua require('telescope.builtin').buffers(require('telescope.themes').get_dropdown{previewer = false, initial_mode='normal'})" + opts) diff --git a/fnl/config/telescope.fnl b/fnl/config/telescope.fnl index dc58b01..d421b0d 100644 --- a/fnl/config/telescope.fnl +++ b/fnl/config/telescope.fnl @@ -76,7 +76,4 @@ :override_file_sorter true :case_mode :smart_case}}}) (telescope.load_extension :fzf) - (telescope.load_extension :session-lens) - (telescope.load_extension :harpoon) - (telescope.load_extension :frecency) - (telescope.load_extension :projects))) + (telescope.load_extension :frecency))) -- cgit v1.2.3-70-g09d2 From be481f2c2a4b8a39a3ccd89775a3771338d39232 Mon Sep 17 00:00:00 2001 From: Gustaf Rydholm Date: Mon, 17 Oct 2022 00:37:04 +0200 Subject: Update autocmd and fix loading --- fnl/config/autocmd.fnl | 2 +- fnl/init.fnl | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'fnl/config') diff --git a/fnl/config/autocmd.fnl b/fnl/config/autocmd.fnl index dfdf789..e05405d 100644 --- a/fnl/config/autocmd.fnl +++ b/fnl/config/autocmd.fnl @@ -26,7 +26,7 @@ :NeogitCommitMessage :NeogitNotification :NeogitCommitView - :toggleterm] + :ToggleTerm] :command "setlocal spell!"}) (create-autocmd :VimResized {:command "tabdo wincmd ="}) diff --git a/fnl/init.fnl b/fnl/init.fnl index 542dead..2e25da9 100644 --- a/fnl/init.fnl +++ b/fnl/init.fnl @@ -1,5 +1,5 @@ ;; Load plugins with packer. -(module init {autoload {: plugins : packer} require [settings config.packer]}) +(module init {autoload {: plugins : packer} require [settings config.packer config.autocmd]}) (packer.startup (fn [use] (each [_ plugin (pairs plugins.all)] -- cgit v1.2.3-70-g09d2 From c526971bfd29d80556b5b352b310573250e08f55 Mon Sep 17 00:00:00 2001 From: Gustaf Rydholm Date: Mon, 17 Oct 2022 00:44:14 +0200 Subject: Update which-key --- fnl/config/which-key.fnl | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) (limited to 'fnl/config') diff --git a/fnl/config/which-key.fnl b/fnl/config/which-key.fnl index 2ad2459..1412c1a 100644 --- a/fnl/config/which-key.fnl +++ b/fnl/config/which-key.fnl @@ -51,7 +51,7 @@ :h ["lua require('harpoon.ui').nav_prev()" "Harpoon Prev"] :t ["Telescope harpoon marks theme=dropdown" - "Search Files"] + "Search Harpoon"] :v ["lua vim.lsp.buf.rename()" :Rename] :p [:SaveSession "Save Session"] :r ["lua require('harpoon.ui').toggle_quick_menu()" @@ -72,7 +72,7 @@ :f ["lua require('telescope.builtin').find_files(require('telescope.themes').get_dropdown{previewer = false})" "Find files"] :t ["Telescope live_grep theme=ivy" "Find text"] - :s ["SearchSession" "Find Session"] + :s [:SearchSession "Find Session"] :S ["Telescope grep_string theme=dropdown" "Find String"] :h ["Telescope help_tags" :Help] :H ["Telescope highlights" :Highlights] @@ -116,12 +116,6 @@ :S ["Telescope lsp_dynamic_workspace_symbols" "Workspace Symbols"]}) -(def- org {:name :Orgmode - :a ["lua require('orgmode').action('agenda.prompt')" - "Open agenda prompt"] - :c ["lua require('orgmode').action('capture.prompt')" - "Open capture prompt"]}) - (def- packer {:name :Packer :c [:PackerCompile :Compile] :i [:PackerInstall :Install] @@ -155,10 +149,9 @@ :l lsp :n ["lua require('Comment.api').toggle.linewise.current()" :Comment] - :o org :p packer :r replace - :u [:UndotreeToggle "Undotree"] + :u [:UndotreeToggle :Undotree] :s [switch-window "Switch window"] :t [:ToggleTerm :Terminal] :T treesitter @@ -174,8 +167,21 @@ (def- vmappings {:n ["lua require('Comment.api').toggle.linewise(vim.fn.visualmode())" :Comment]}) +(def- gopts {:mode :n + :prefix :g + :buffer nil + :silent true + :noremap true + :nowait true}) + +(def- gmappings {:a ["lua require('orgmode').action('agenda.prompt')" + "Open agenda prompt"] + :c ["lua require('orgmode').action('capture.prompt')" + "Open capture prompt"]}) + (let [which-key (util.prequire :which-key)] (which-key.setup setup) (which-key.register mmappings mopts) (which-key.register nmappings nopts) - (which-key.register vmappings vopts)) + (which-key.register vmappings vopts) + (which-key.register gmappings gopts)) -- cgit v1.2.3-70-g09d2