(module init {require {utils utils str aniseed.string nvim aniseed.nvim a aniseed.core fennel aniseed.fennel} require-macros [macros]}) (macro make-errors-epic [f] `(xpcall #,f #(a.println (fennel.traceback $1)))) (make-errors-epic (require "plugins.lsp")) (make-errors-epic (require "keybinds")) ; called from packer config (fn _G.load_telescope [] (require "plugins.telescope")) ;(pkg telescope.nvim [] ;(make-errors-epic (require "plugins.telescope")))) (pkg galaxyline.nvim [] (make-errors-epic (require "plugins.galaxyline"))) (pkg nvim-bufferline.lua [] (make-errors-epic (require "plugins.bufferline"))) (def- colors utils.colors) (pkg conjure [] (set vim.g.conjure#client#fennel#aniseed#aniseed_module_prefix "aniseed.")) ; Colors ------------------------------------------------------- foldstart (utils.highlight-add ["GruvboxBlueSign" "GruvboxAquaSign" "GruvboxRedSign" "GruvboxYellowSign" "GruvboxGreenSign" "GruvboxOrangeSign" "GruvboxPurpleSign"] {:bg "NONE"}) ; foldend ; Treesitter ------------------------------------------------------- foldstart (pkg nvim-treesitter [configs (require "nvim-treesitter.configs")] (configs.setup {:ensure_installed "all" :highlight {:enable true :disable ["fennel"]} ;:indent {:enable true} ;:disable ["lua"]} :incremental_selection {:enable true :keymaps {:init_selection "gss" :node_incremental "gsl" :node_decremental "gsh" :scope_incremental "gsj" :scope_decremental "gsk"}} ; disabled due to it fucking with gitsigns.nvim ;:rainbow { :enable true ;:extended_mode true} :context_commentstring {:enable true}})) ;(nvim-biscuits.setup {} ;{ :on_events ["InsertLeave" "CursorHoldI"]}) ; foldend ; gitsigns.nvim ------------------------------------------------------- foldstart ; https://github.com/lewis6991/gitsigns.nvim (pkg gitsigns.nvim [gitsigns (require "gitsigns")] (gitsigns.setup {:signs {:add {:text "▍"} :change {:text "▍"} :delete {:text "▍"} :topdelete {:text "▍"} :changedelete {:text "▍"}} :keymaps {:noremap true :buffer true} :current_line_blame true :update_debounce 100}) (utils.highlight "GitSignsAdd" {:bg "NONE" :fg colors.bright_aqua}) (utils.highlight "GitSignsDelete" {:bg "NONE" :fg colors.neutral_red}) (utils.highlight "GitSignsChange" {:bg "NONE" :fg colors.bright_blue})) ; foldend ; :: diffview ------------------------------------------------------------------- foldstart (pkg diffview.nvim [diffview (require "diffview") cb (. (require "diffview.config") :diffview_callback)] (diffview.setup {:diff_binaries false :file_panel {:width 35 :use_icons false} :key_bindings {:view {:dn (cb "select_next_entry") :dp (cb "select_prev_entry") :dd (cb "toggle_files")}}})) ; foldend ; :: and _ as space ------------------------------------------------------------------- foldstart (var remapped-space nil) (fn _G.RebindShit [newKey] (set remapped-space {:old (vim.fn.maparg : :i) :cur newKey}) (utils.keymap :i : newKey {:buffer true})) (fn _G.UnbindSpaceStuff [] (when (and remapped-space (~= remapped-space {})) (utils.del-keymap :i : true) (when (~= remapped-space.old "") (utils.keymap :i : remapped-space.old {:buffer true})) (set remapped-space nil))) (nvim.command "autocmd! InsertLeave * :call v:lua.UnbindSpaceStuff()") (utils.keymap :n "j" ":call v:lua.RebindShit('_')") (utils.keymap :n "k" ":call v:lua.RebindShit('::')") (utils.keymap :i "j" ":call v:lua.RebindShit('_')") (utils.keymap :i "k" ":call v:lua.RebindShit('::')") (utils.keymap :n "ö" "a") ; foldend ; vim:foldmarker=foldstart,foldend