summaryrefslogtreecommitdiff
path: root/fnl
diff options
context:
space:
mode:
Diffstat (limited to 'fnl')
-rw-r--r--fnl/config/alpha.fnl61
-rw-r--r--fnl/config/autocmd.fnl117
-rw-r--r--fnl/config/autopairs.fnl40
-rw-r--r--fnl/config/better-escape.fnl13
-rw-r--r--fnl/config/bufferline.fnl166
-rw-r--r--fnl/config/cmp.fnl60
-rw-r--r--fnl/config/colorizer.fnl3
-rw-r--r--fnl/config/colorscheme.fnl9
-rw-r--r--fnl/config/gitsigns.fnl110
-rw-r--r--fnl/config/hop.fnl8
-rw-r--r--fnl/config/impatient.fnl3
-rw-r--r--fnl/config/init.fnl46
-rw-r--r--fnl/config/lsp/handlers.fnl117
-rw-r--r--fnl/config/lsp/init.fnl9
-rw-r--r--fnl/config/lsp/lsp-installer.fnl34
-rw-r--r--fnl/config/lsp/null-ls.fnl47
-rw-r--r--fnl/config/lsp/settings/jsonls.fnl22
-rw-r--r--fnl/config/lsp/settings/pyright.fnl6
-rw-r--r--fnl/config/lsp/settings/sumneko-lua.fnl30
-rw-r--r--fnl/config/lualine.fnl92
-rw-r--r--fnl/config/ncomment.fnl34
-rw-r--r--fnl/config/nvim-tree.fnl175
-rw-r--r--fnl/config/orgmode.fnl23
-rw-r--r--fnl/config/packer.fnl10
-rw-r--r--fnl/config/project.fnl28
-rw-r--r--fnl/config/spectre.fnl157
-rw-r--r--fnl/config/telescope.fnl167
-rw-r--r--fnl/config/treesitter.fnl27
-rw-r--r--fnl/config/which-key.fnl281
-rw-r--r--fnl/config/zen.fnl25
-rw-r--r--fnl/init.fnl5
-rw-r--r--fnl/install.fnl13
-rw-r--r--fnl/plugins.fnl122
-rw-r--r--fnl/settings/init.fnl4
-rw-r--r--fnl/settings/keymaps.fnl47
-rw-r--r--fnl/settings/options.fnl115
-rw-r--r--fnl/util.fnl15
37 files changed, 996 insertions, 1245 deletions
diff --git a/fnl/config/alpha.fnl b/fnl/config/alpha.fnl
index 13a02c6..4fb51ec 100644
--- a/fnl/config/alpha.fnl
+++ b/fnl/config/alpha.fnl
@@ -1,41 +1,40 @@
;; A customizable greeter.
-(module config.alpha
- {autoload {util util}})
+(module config.alpha {autoload {util util}})
-(def- ascii-art [
- " ##############..... ############## "
- " ##############......############## "
- " ##########..........########## "
- " ##########........########## "
- " ##########.......########## "
- " ##########.....##########.. "
- " ##########....##########..... "
- " ..##########..##########......... "
- " ....##########.#########............. "
- " ..################JJJ............ "
- " ################............. "
- " ##############.JJJ.JJJJJJJJJJ "
- " ############...JJ...JJ..JJ JJ "
- " ##########....JJ...JJ..JJ JJ "
- " ########......JJJ..JJJ JJJ JJJ "
- " ###### ......... "
- " ..... "
- " . "
-])
+(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)]
(do
(set dashboard.section.header.val ascii-art)
- (set dashboard.section.buttons.val [
- (dashboard.button "f" " Find file" ":Telescope file_browser <CR>")
- (dashboard.button "e" " New file" ":ene <BAR> startinsert <CR>")
- (dashboard.button "p" " Find project" ":Telescope projects <CR>")
- (dashboard.button "r" " Recently used files" ":Telescope oldfiles <CR>")
- (dashboard.button "t" " Find text" ":Telescope live_grep <CR>")
- (dashboard.button "c" " Configuration" ":e ~/.config/nvim/init.lua <CR>")
- (dashboard.button "q" " Quit Neovim" ":qa<CR>")
- ])
+ (set dashboard.section.buttons.val
+ [(dashboard.button :f " Find file"
+ ":Telescope file_browser <CR>")
+ (dashboard.button :e " New file" ":ene <BAR> startinsert <CR>")
+ (dashboard.button :p " Find project" ":Telescope projects <CR>")
+ (dashboard.button :r " Recently used files"
+ ":Telescope oldfiles <CR>")
+ (dashboard.button :t " Find text" ":Telescope live_grep <CR>")
+ (dashboard.button :c " Configuration"
+ ":e ~/.config/nvim/init.lua <CR>")
+ (dashboard.button :q " Quit Neovim" ":qa<CR>")])
(set dashboard.section.header.opts.hl :AlphaHeader)
(set dashboard.section.buttons.opts.hl :AlphaButtons)
(set dashboard.opts.opts.noautocmd true)
diff --git a/fnl/config/autocmd.fnl b/fnl/config/autocmd.fnl
index c5e7ae5..ecec60a 100644
--- a/fnl/config/autocmd.fnl
+++ b/fnl/config/autocmd.fnl
@@ -1,69 +1,50 @@
;; A customizable greeter.
-(module config.autocmd
- {autoload {util util}})
-
-(util.autocmd
- :FileType
- {:pattern [ :qf :help :man :lspinfo ]
- :command "nnoremap <silent> <buffer> q :close<CR>"
- :group :_general_settings})
-
-(util.autocmd
- :TextYankPost
- {:pattern [ :* ]
- :callback (lambda [] (vim.highlight.on_yank {:timeout 200}))
- :group :_general_settings})
-
-(util.autocmd
- :BufWinEnter
- {:pattern [ :* ]
- :command ":set formatoptions-=cro"
- :group :_general_settings})
-
-(util.autocmd
- :FileType
- {:pattern [ :qf ]
- :command "set nobuflisted"
- :group :_general_settings})
-
-(util.autocmd
- :FileType
- {:pattern [ :gitcommit ]
- :command "setlocal wrap"
- :group :_git})
-
-(util.autocmd
- :FileType
- {:pattern [ :gitcommit ]
- :command "setlocal spell"
- :group :_git})
-
-(util.autocmd
- :FileType
- {:pattern [ :markdown ]
- :command "setlocal wrap"
- :group :_markdown})
-
-(util.autocmd
- :FileType
- {:pattern [ :markdown ]
- :command "setlocal spell"
- :group :_markdown})
-
-(util.autocmd
- :VimResized
- {:pattern [ :* ]
- :command "tabdo wincmd ="
- :group :_auto_resize})
-
-(util.autocmd
- :User
- {:pattern [ :AlphaReady ]
- :command "set showtabline=0 | autocmd BufUnload <buffer> set showtabline=2"
- :group :_alpha})
-
-(util.autocmd
- :BufWritePost
- {:pattern [ :plugins.fnl ]
- :command "source <afile> | PackerSync"
- :group :packer_user_config})
+(module config.autocmd {autoload {util util}})
+
+(util.autocmd :FileType {:pattern [:qf :help :man :lspinfo]
+ :command "nnoremap <silent> <buffer> q :close<CR>"
+ :group :_general_settings})
+
+(util.autocmd :TextYankPost
+ {:pattern ["*"]
+ :callback (lambda []
+ (vim.highlight.on_yank {:timeout 200}))
+ :group :_general_settings})
+
+(util.autocmd :BufWinEnter
+ {:pattern ["*"]
+ :command ":set formatoptions-=cro"
+ :group :_general_settings})
+
+(util.autocmd :FileType {:pattern [:qf]
+ :command "set nobuflisted"
+ :group :_general_settings})
+
+(util.autocmd :FileType {:pattern [:gitcommit]
+ :command "setlocal wrap"
+ :group :_git})
+
+(util.autocmd :FileType {:pattern [:gitcommit]
+ :command "setlocal spell"
+ :group :_git})
+
+(util.autocmd :FileType {:pattern [:markdown]
+ :command "setlocal wrap"
+ :group :_markdown})
+
+(util.autocmd :FileType {:pattern [:markdown]
+ :command "setlocal spell"
+ :group :_markdown})
+
+(util.autocmd :VimResized {:pattern ["*"]
+ :command "tabdo wincmd ="
+ :group :_auto_resize})
+
+(util.autocmd :User {:pattern [:AlphaReady]
+ :command "set showtabline=0 | autocmd BufUnload <buffer> set showtabline=2"
+ :group :_alpha})
+
+(util.autocmd :BufWritePost
+ {:pattern [:plugins.fnl]
+ :command "source <afile> | PackerSync"
+ :group :packer_user_config})
diff --git a/fnl/config/autopairs.fnl b/fnl/config/autopairs.fnl
index b2d0475..2b175fa 100644
--- a/fnl/config/autopairs.fnl
+++ b/fnl/config/autopairs.fnl
@@ -1,25 +1,21 @@
;; Autopairs for brackets and quote symbols.
-(module config.autopairs
- {autoload {util util}})
+(module config.autopairs {autoload {util util}})
(let [npairs (util.load-plugin :nvim-autopairs)]
- (npairs.setup {
- :check_ts true
- :ts_config {
- :lua [ :string :source ]
- :javascript [ :string :template_string ]
- :java false
- }
- :disable_filetype [ :TelescopePrompt :spectre_panel ]
- :fast_warp {
- :map "<M-e>"
- :chars [ "{" "[" "(" "\"" "'" ]
- :pattern (string.gsub "[%'%\"%)%>%]%)%}%,]" "%s+" "")
- :check_comma true
- :highlight :PmenuSel
- :highlight_grey :LineNr
- :offset 0
- :end_key :$
- :keys :qwertyuiopzxcvbnmasdfghjkl
- :highlight :PmenuSel
- :highlight_grey :LineNr}}))
+ (npairs.setup {:check_ts true
+ :ts_config {:lua [:string :source]
+ :javascript [:string :template_string]
+ :java false}
+ :disable_filetype [:TelescopePrompt :spectre_panel]
+ :fast_warp {:map :<M-e>
+ :chars ["{" "[" "(" "\"" "'"]
+ :pattern (string.gsub "[%'%\"%)%>%]%)%}%,]" "%s+"
+ "")
+ :check_comma true
+ :highlight :PmenuSel
+ :highlight_grey :LineNr
+ :offset 0
+ :end_key "$"
+ :keys :qwertyuiopzxcvbnmasdfghjkl
+ :highlight :PmenuSel
+ :highlight_grey :LineNr}}))
diff --git a/fnl/config/better-escape.fnl b/fnl/config/better-escape.fnl
index 2351187..93ec0a9 100644
--- a/fnl/config/better-escape.fnl
+++ b/fnl/config/better-escape.fnl
@@ -1,11 +1,8 @@
;; Better escape without nasty delay
-(module config.better-escape
- {autoload {util util}})
-
+(module config.better-escape {autoload {util util}})
(let [better-escape (util.load-plugin :better_escape)]
- (better-escape.setup {
- :mapping ["jk" "jj"]
- :timeout vim.o.timeoutlen
- :clear_empty_lines false
- :keys "<Esc>"}))
+ (better-escape.setup {:mapping [:jk :jj]
+ :timeout vim.o.timeoutlen
+ :clear_empty_lines false
+ :keys :<Esc>}))
diff --git a/fnl/config/bufferline.fnl b/fnl/config/bufferline.fnl
index f4ec98b..8e6d094 100644
--- a/fnl/config/bufferline.fnl
+++ b/fnl/config/bufferline.fnl
@@ -1,117 +1,69 @@
;; Topbar that displays open buffers.
-(module config.bufferline
- {autoload {util util}})
+(module config.bufferline {autoload {util util}})
-(def- options
- {:numbers "none"
- :close_command "Bdelete! %d"
- :right_mouse_command nil
- :left_mouse_command nil
- :middle_mouse_command nil
- :indicator_icon ""
- :buffer_close_icon ""
- :modified_icon "●"
- :close_icon ""
- :left_trunc_marker "<"
- :right_trunc_marker ">"
- :max_name_length 30
- :max_prefix_length 30
- :tab_size 21
- :diagnostics false
- :diagnostics_update_in_insert false
- :offsets [ { :filetype "NvimTree" :text "" :padding 1 } ]
- :show_buffer_icons false
- :show_buffer_close_icons false
- :show_close_icon false
- :show_tab_indicators false
- :persist_buffer_sort true
- :separator_style "thin"
- :enforce_regular_tabs true
- :always_show_bufferline true})
+(def- options {:numbers :none
+ :close_command "Bdelete! %d"
+ :right_mouse_command nil
+ :left_mouse_command nil
+ :middle_mouse_command nil
+ :indicator_icon ""
+ :buffer_close_icon ""
+ :modified_icon "●"
+ :close_icon ""
+ :left_trunc_marker "<"
+ :right_trunc_marker ">"
+ :max_name_length 30
+ :max_prefix_length 30
+ :tab_size 21
+ :diagnostics false
+ :diagnostics_update_in_insert false
+ :offsets [{:filetype :NvimTree :text "" :padding 1}]
+ :show_buffer_icons false
+ :show_buffer_close_icons false
+ :show_close_icon false
+ :show_tab_indicators false
+ :persist_buffer_sort true
+ :separator_style :thin
+ :enforce_regular_tabs true
+ :always_show_bufferline true})
-(def- default-bg-tabline {
- :attribute "bg" :highlight "TabLine"})
+(def- default-bg-tabline {:attribute :bg :highlight :TabLine})
-(def- default-bg-normal {
- :attribute "bg" :highlight "Normal"})
+(def- default-bg-normal {:attribute :bg :highlight :Normal})
-(def- default-fg-tabline {
- :attribute "fg" :highlight "TabLine"})
+(def- default-fg-tabline {:attribute :fg :highlight :TabLine})
-(def- default-fg-normal {
- :attribute "fg" :highlight "Normal"})
+(def- default-fg-normal {:attribute :fg :highlight :Normal})
(def- highlights
- {:fill {
- :guifg { :attribute "fg" :highlight "#ff0000" }
- :guibg default-bg-tabline
- }
- :background {
- :guifg default-fg-tabline
- :guibg default-bg-tabline
- }
- :buffer_visible {
- :guifg default-fg-tabline
- :guibg default-bg-tabline
- }
- :close_button {
- :guifg default-fg-tabline
- :guibg default-bg-tabline
- }
- :close_button_visible {
- :guifg default-fg-tabline
- :guibg default-bg-tabline
- }
- :tab_selected {
- :guifg default-fg-normal
- :guibg default-bg-normal
- }
- :tab {
- :guifg default-fg-tabline
- :guibg default-bg-tabline
- }
- :tab_close {
- :guifg { :attribute "fg" :highlight "TabLineSel" }
- :guibg default-bg-normal
- }
- :duplicate_selected {
- :guifg { :attribute "fg" :highlight "TabLineSel" }
- :guibg { :attribute "bg" :highlight "TabLineSel" }
- :gui "italic"
- }
- :duplicate_visible {
- :guifg default-fg-tabline
- :guibg default-bg-tabline
- :gui "italic"
- }
- :duplicate {
- :guifg default-fg-tabline
- :guibg default-bg-tabline
- :gui "italic"
- }
- :modified {
- :guifg default-fg-tabline
- :guibg default-bg-tabline
- }
- :modified_selected {
- :guifg default-fg-normal
- :guibg default-bg-normal
- }
- :modified_visible {
- :guifg default-fg-tabline
- :guibg default-bg-tabline
- }
- :separator {
- :guifg default-bg-tabline
- :guibg default-bg-tabline
- }
- :separator_selected {
- :guifg default-bg-normal
- :guibg default-bg-normal
- }
- :indicator_selected {
- :guifg { :attribute "fg" :highlight "LspDiagnosticsDefaultHint" }
- :guibg default-bg-normal}})
+ {:fill {:guifg {:attribute :fg :highlight "#ff0000"}
+ :guibg default-bg-tabline}
+ :background {:guifg default-fg-tabline :guibg default-bg-tabline}
+ :buffer_visible {:guifg default-fg-tabline :guibg default-bg-tabline}
+ :close_button {:guifg default-fg-tabline :guibg default-bg-tabline}
+ :close_button_visible {:guifg default-fg-tabline
+ :guibg default-bg-tabline}
+ :tab_selected {:guifg default-fg-normal :guibg default-bg-normal}
+ :tab {:guifg default-fg-tabline :guibg default-bg-tabline}
+ :tab_close {:guifg {:attribute :fg :highlight :TabLineSel}
+ :guibg default-bg-normal}
+ :duplicate_selected {:guifg {:attribute :fg :highlight :TabLineSel}
+ :guibg {:attribute :bg :highlight :TabLineSel}
+ :gui :italic}
+ :duplicate_visible {:guifg default-fg-tabline
+ :guibg default-bg-tabline
+ :gui :italic}
+ :duplicate {:guifg default-fg-tabline
+ :guibg default-bg-tabline
+ :gui :italic}
+ :modified {:guifg default-fg-tabline :guibg default-bg-tabline}
+ :modified_selected {:guifg default-fg-normal :guibg default-bg-normal}
+ :modified_visible {:guifg default-fg-tabline :guibg default-bg-tabline}
+ :separator {:guifg default-bg-tabline :guibg default-bg-tabline}
+ :separator_selected {:guifg default-bg-normal :guibg default-bg-normal}
+ :indicator_selected {:guifg {:attribute :fg
+ :highlight :LspDiagnosticsDefaultHint}
+ :guibg default-bg-normal}})
(let [bufferline (util.load-plugin :bufferline)]
- (bufferline.setup {:options options :highlights highlights}))
+ (bufferline.setup {: options : highlights}))
diff --git a/fnl/config/cmp.fnl b/fnl/config/cmp.fnl
index 34cc026..e4e16da 100644
--- a/fnl/config/cmp.fnl
+++ b/fnl/config/cmp.fnl
@@ -1,38 +1,32 @@
;; Configuration for completion plugin.
-(module config.cmp
- {autoload {nvim aniseed.nvim
- util util}})
-
+(module config.cmp {autoload {nvim aniseed.nvim util util}})
(let [cmp (util.load-plugin :cmp)
lspkind (util.load-plugin :lspkind)
luasnip (util.load-plugin :luasnip)]
- ;;((require :luasnip/loaders/from_vscode).lazy_load)
- (lspkind.init)
- (cmp.setup {
- :snippet {
- :expand (fn [args]
- (luasnip.lsp_expand args.body))}
- :mapping {
- "<C-k>" (cmp.mapping.select_prev_item)
- "<C-j>" (cmp.mapping.select_next_item)}
- :sources [
- {:name "nvim_lsp"}
- {:name "nvim_lua"}
- {:name "luasnip"}
- {:name "buffer" :keyword_length 4}
- {:name "path" :keyword_length 6}]
- :formatting {:format (lspkind.cmp_format {
- :with_text true
- :menu {
- :buffer "[Buf]"
- :nvim_lsp "[LSP]"
- :nvim_lua "[api]"
- :path "[path]"
- :luasnip "[Snip]"
- }})}
- :documentation {
- :border [ "╭" "─" "╮" "│" "╯" "─" "╰" "│" ]}
- :experimental {
- :ghost_text false
- :native_menu false}}))
+ ;;((require :luasnip/loaders/from_vscode).lazy_load)
+ (lspkind.init)
+ (cmp.setup {:snippet {:expand (fn [args]
+ (luasnip.lsp_expand args.body))}
+ :mapping {:<C-k> (cmp.mapping.select_prev_item)
+ :<C-j> (cmp.mapping.select_next_item)}
+ :sources [{:name :nvim_lsp}
+ {:name :nvim_lua}
+ {:name :luasnip}
+ {:name :buffer :keyword_length 4}
+ {:name :path :keyword_length 6}]
+ :formatting {:format (lspkind.cmp_format {:with_text true
+ :menu {:buffer "[Buf]"
+ :nvim_lsp "[LSP]"
+ :nvim_lua "[api]"
+ :path "[path]"
+ :luasnip "[Snip]"}})}
+ :documentation {:border ["╭"
+ "─"
+ "╮"
+ "│"
+ "╯"
+ "─"
+ "╰"
+ "│"]}
+ :experimental {:ghost_text false :native_menu false}}))
diff --git a/fnl/config/colorizer.fnl b/fnl/config/colorizer.fnl
index 7118388..4d0b381 100644
--- a/fnl/config/colorizer.fnl
+++ b/fnl/config/colorizer.fnl
@@ -1,6 +1,5 @@
;; Enables colorization of color codes in source files.
-(module config.colorizer
- {autoload {util util}})
+(module config.colorizer {autoload {util util}})
(let [colorizer (util.load-plugin :colorizer)]
(colorizer.setup))
diff --git a/fnl/config/colorscheme.fnl b/fnl/config/colorscheme.fnl
index 828daf1..989ee75 100644
--- a/fnl/config/colorscheme.fnl
+++ b/fnl/config/colorscheme.fnl
@@ -1,9 +1,8 @@
;; Load neovim colorscheme.
-(module config.colorscheme
- {autoload {util util}})
+(module config.colorscheme {autoload {util util}})
-(local colorscheme "no-clown-fiesta")
+(local colorscheme :no-clown-fiesta)
-(let [(ok? _) (pcall (vim.cmd (.. "colorscheme " "no-clown-fiesta")))]
+(let [(ok? _) (pcall (vim.cmd (.. "colorscheme " :no-clown-fiesta)))]
(if (not ok?)
- (vim.notify (.. "colorscheme " colorscheme " not found!"))))
+ (vim.notify (.. "colorscheme " colorscheme " not found!"))))
diff --git a/fnl/config/gitsigns.fnl b/fnl/config/gitsigns.fnl
index d179e3e..07b9157 100644
--- a/fnl/config/gitsigns.fnl
+++ b/fnl/config/gitsigns.fnl
@@ -1,70 +1,48 @@
;; Add git signs to source files.
-(module config.gitsigns
- {autoload {util util}})
+(module config.gitsigns {autoload {util util}})
-(def- signs {
- :add {
- :hl "GitSignsAdd"
- :text "▎"
- :numhl "GitSignsAddNr"
- :linehl "GitSignsAddLn"
- }
- :change {
- :hl "GitSignsChange"
- :text "▎"
- :numhl "GitSignsChangeNr"
- :linehl "GitSignsChangeLn"
- }
- :delete {
- :hl "GitSignsDelete"
- :text "契"
- :numhl "GitSignsDeleteNr"
- :linehl "GitSignsDeleteLn"
- }
- :topdelete {
- :hl "GitSignsDelete"
- :text "契"
- :numhl "GitSignsDeleteNr"
- :linehl "GitSignsDeleteLn"
- }
- :changedelete {
- :hl "GitSignsChange"
- :text "▎"
- :numhl "GitSignsChangeNr"
- :linehl "GitSignsChangeLn"}})
+(def- signs {:add {:hl :GitSignsAdd
+ :text "▎"
+ :numhl :GitSignsAddNr
+ :linehl :GitSignsAddLn}
+ :change {:hl :GitSignsChange
+ :text "▎"
+ :numhl :GitSignsChangeNr
+ :linehl :GitSignsChangeLn}
+ :delete {:hl :GitSignsDelete
+ :text "契"
+ :numhl :GitSignsDeleteNr
+ :linehl :GitSignsDeleteLn}
+ :topdelete {:hl :GitSignsDelete
+ :text "契"
+ :numhl :GitSignsDeleteNr
+ :linehl :GitSignsDeleteLn}
+ :changedelete {:hl :GitSignsChange
+ :text "▎"
+ :numhl :GitSignsChangeNr
+ :linehl :GitSignsChangeLn}})
(let [gitsigns (util.load-plugin :gitsigns)]
- (gitsigns.setup {
- :signs signs
- :signcolumn true
- :numhl false
- :linehl false
- :word_diff false
- :watch_gitdir {
- :interval 1000
- :follow_files true
- }
- :attach_to_untracked true
- :current_line_blame false
- :current_line_blame_opts {
- :virt_text true
- :virt_text_pos "eol"
- :delay 1000
- :ignore_whitespace false
- }
- :current_line_blame_formatter_opts {
- :relative_time false
- }
- :sign_priority 6
- :update_debounce 100
- :status_formatter nil
- :max_file_length 40000
- :preview_config {
- :border "single"
- :style "minimal"
- :relative "cursor"
- :row 0
- :col 1
- }
- :yadm {
- :enable false}}))
+ (gitsigns.setup {: signs
+ :signcolumn true
+ :numhl false
+ :linehl false
+ :word_diff false
+ :watch_gitdir {:interval 1000 :follow_files true}
+ :attach_to_untracked true
+ :current_line_blame false
+ :current_line_blame_opts {:virt_text true
+ :virt_text_pos :eol
+ :delay 1000
+ :ignore_whitespace false}
+ :current_line_blame_formatter_opts {:relative_time false}
+ :sign_priority 6
+ :update_debounce 100
+ :status_formatter nil
+ :max_file_length 40000
+ :preview_config {:border :single
+ :style :minimal
+ :relative :cursor
+ :row 0
+ :col 1}
+ :yadm {:enable false}}))
diff --git a/fnl/config/hop.fnl b/fnl/config/hop.fnl
index 53ba9e9..f623c0f 100644
--- a/fnl/config/hop.fnl
+++ b/fnl/config/hop.fnl
@@ -1,10 +1,8 @@
;; Hopping in text.
-(module config.hop
- {autoload {util util
- nvim aniseed.nvim}})
+(module config.hop {autoload {util util nvim aniseed.nvim}})
(let [hop (util.load-plugin :hop)]
(hop.setup {}))
-(nvim.set_keymap "n" "s" ":HopChar2<cr>" { :silent true })
-(nvim.set_keymap "n" "S" ":HopWord<cr>" { :silent true })
+(nvim.set_keymap :n :s ":HopChar2<cr>" {:silent true})
+(nvim.set_keymap :n :S ":HopWord<cr>" {:silent true})
diff --git a/fnl/config/impatient.fnl b/fnl/config/impatient.fnl
index fda96a4..ab37eb3 100644
--- a/fnl/config/impatient.fnl
+++ b/fnl/config/impatient.fnl
@@ -1,6 +1,5 @@
;; Speeds up loading of plugins.
-(module config.impatient
- {autoload {util util}})
+(module config.impatient {autoload {util util}})
(let [impatient (util.load-plugin :impatient)]
(impatient.enable_profile))
diff --git a/fnl/config/init.fnl b/fnl/config/init.fnl
index d1a2ef8..b736f7a 100644
--- a/fnl/config/init.fnl
+++ b/fnl/config/init.fnl
@@ -1,26 +1,22 @@
;; Load all plugin configs.
-(module config.init
- {require
- {_ config.packer
- _ config.alpha
- ;;_ config.autocmd
- _ config.autopairs
- _ config.better-escape
- _ config.bufferline
- _ config.cmp
- _ config.colorizer
- _ config.colorscheme
- _ config.gitsigns
- _ config.lualine
- _ config.ncomment
- _ config.nvim-tree
- _ config.orgmode
- _ config.project
- _ config.spectre
- _ config.telescope
- _ config.treesitter
- _ config.which-key
- _ config.zen
- _ config.lsp
- }})
-
+(module config.init {require {_ config.packer
+ _ config.alpha
+ ;;_ config.autocmd
+ _ config.autopairs
+ _ config.better-escape
+ _ config.bufferline
+ _ config.cmp
+ _ config.colorizer
+ _ config.colorscheme
+ _ config.gitsigns
+ _ config.lualine
+ _ config.ncomment
+ _ config.nvim-tree
+ _ config.orgmode
+ _ config.project
+ _ config.spectre
+ _ config.telescope
+ _ config.treesitter
+ _ config.which-key
+ _ config.zen
+ _ config.lsp}})
diff --git a/fnl/config/lsp/handlers.fnl b/fnl/config/lsp/handlers.fnl
index 950f3fb..1e3785b 100644
--- a/fnl/config/lsp/handlers.fnl
+++ b/fnl/config/lsp/handlers.fnl
@@ -1,60 +1,61 @@
-(module config.lsp.handlers
- {autoload {util util
- nvim aniseed.nvim}})
-
-(def- signs
- [{ :name "DiagnosticSignError" :text "" }
- { :name "DiagnosticSignWarn" :text "" }
- { :name "DiagnosticSignHint" :text "" }
- { :name "DiagnosticSignInfo" :text "" }])
-
-(defn- apply-signs []
- (each [_ sign (ipairs signs)]
- (vim.fn.sign_define sign.name { :texthl sign.name :text sign.text :numhl "" })))
-
-(def- config
- {:virtual_text false
- :signs {
- :active signs
- }
- :update_in_insert true
- :underline true
- :severity_sort true
- :float {
- :focusable false
- :style "minimal"
- :border "rounded"
- :source "always"
- :header ""
- :prefix ""}})
-
-(defn setup []
- (apply-signs)
- (vim.diagnostic.config config)
- (set vim.lsp.handlers.textDocument/hover (vim.lsp.with { :border "rounded"} ))
- (set vim.lsp.handlers.textDocument/signatureHelp
- (vim.lsp.with vim.lsp.handlers.signature_help { :border "rounded"} )))
-
-(defn- lsp-keymaps [bufnr]
- (let [opts { :noremap true :silent true }]
- (nvim.buf_set_keymap bufnr :n :gD "<cmd>lua vim.lsp.buf.declaration()<CR>" opts)
- (nvim.buf_set_keymap bufnr :n :gd "<cmd>lua vim.lsp.buf.definition()<CR>" opts)
- (nvim.buf_set_keymap bufnr :n :K "<cmd>lua vim.lsp.buf.hover()<CR>" opts)
- (nvim.buf_set_keymap bufnr :n :gI "<cmd>lua vim.lsp.buf.implementation()<CR>" opts)
- (nvim.buf_set_keymap bufnr :n :gr "<cmd>lua vim.lsp.buf.references()<CR>" opts)
- (nvim.buf_set_keymap bufnr :n :gl "<cmd>lua vim.diagnostic.open_float()<CR>" opts)
- (nvim.buf_set_keymap bufnr :n :<leader>q "<cmd>lua vim.diagnostic.setloclist()<CR>" opts)))
-
-(defn on-attach [client bufnr]
- (if (= client.name :html)
- (set client.resolved_capabilities.document_formatting false))
- (lsp-keymaps bufnr))
-
-(defn capabilities []
- (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))
- capabilities))
+(module config.lsp.handlers {autoload {util util nvim aniseed.nvim}})
+
+(def- signs [{:name :DiagnosticSignError :text ""}
+ {:name :DiagnosticSignWarn :text ""}
+ {:name :DiagnosticSignHint :text ""}
+ {:name :DiagnosticSignInfo :text ""}])
+
+(defn- apply-signs [] (each [_ sign (ipairs signs)]
+ (vim.fn.sign_define sign.name
+ {:texthl sign.name
+ :text sign.text
+ :numhl ""})))
+
+(def- config {:virtual_text false
+ :signs {:active signs}
+ :update_in_insert true
+ :underline true
+ :severity_sort true
+ :float {:focusable false
+ :style :minimal
+ :border :rounded
+ :source :always
+ :header ""
+ :prefix ""}})
+
+(defn setup [] (apply-signs) (vim.diagnostic.config config)
+ (set vim.lsp.handlers.textDocument/hover
+ (vim.lsp.with {:border :rounded}))
+ (set vim.lsp.handlers.textDocument/signatureHelp
+ (vim.lsp.with vim.lsp.handlers.signature_help {:border :rounded})))
+
+(defn- lsp-keymaps [bufnr]
+ (let [opts {:noremap true :silent true}]
+ (nvim.buf_set_keymap bufnr :n :gD
+ "<cmd>lua vim.lsp.buf.declaration()<CR>" opts)
+ (nvim.buf_set_keymap bufnr :n :gd
+ "<cmd>lua vim.lsp.buf.definition()<CR>" opts)
+ (nvim.buf_set_keymap bufnr :n :K "<cmd>lua vim.lsp.buf.hover()<CR>"
+ opts)
+ (nvim.buf_set_keymap bufnr :n :gI
+ "<cmd>lua vim.lsp.buf.implementation()<CR>" opts)
+ (nvim.buf_set_keymap bufnr :n :gr
+ "<cmd>lua vim.lsp.buf.references()<CR>" opts)
+ (nvim.buf_set_keymap bufnr :n :gl
+ "<cmd>lua vim.diagnostic.open_float()<CR>" opts)
+ (nvim.buf_set_keymap bufnr :n :<leader>q
+ "<cmd>lua vim.diagnostic.setloclist()<CR>" opts)))
+
+(defn on-attach [client bufnr] (if (= client.name :html)
+ (set client.resolved_capabilities.document_formatting
+ false))
+ (lsp-keymaps bufnr))
+
+(defn capabilities [] (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))
+ capabilities))
(setup)
diff --git a/fnl/config/lsp/init.fnl b/fnl/config/lsp/init.fnl
index b26dd7a..c4a461d 100644
--- a/fnl/config/lsp/init.fnl
+++ b/fnl/config/lsp/init.fnl
@@ -1,8 +1,7 @@
;; Loads the LSP module.
-(module config.lsp.init
- {autoload {util util}})
+(module config.lsp.init {autoload {util util}})
(let [_ (util.load-plugin :lspconfig)]
- (require :config.lsp.lsp-installer)
- (require :config.lsp.handlers)
- (require :config.lsp.null-ls))
+ (require :config.lsp.lsp-installer)
+ (require :config.lsp.handlers)
+ (require :config.lsp.null-ls))
diff --git a/fnl/config/lsp/lsp-installer.fnl b/fnl/config/lsp/lsp-installer.fnl
index 3649566..9522ef1 100644
--- a/fnl/config/lsp/lsp-installer.fnl
+++ b/fnl/config/lsp/lsp-installer.fnl
@@ -1,26 +1,22 @@
;; LSP installer.
-(module config.lsp.lsp-installer
- {autoload {util util}})
+(module config.lsp.lsp-installer {autoload {util util}})
-(def- opts
- (let [handlers (require :config.lsp.handlers)]
- {:on_attach: handlers.on_attach
- :capabilities handlers.capabilities}))
+(def- opts (let [handlers (require :config.lsp.handlers)]
+ {"on_attach:" handlers.on_attach
+ :capabilities handlers.capabilities}))
(defn- get-server-opts [server]
- (when (= server.name :jsonls)
- (let [jsonls-opts (require :config.lsp.settings.jsonls)]
- (vim.tbl_deep_extend :force jsonls-opts opts)))
- (when (= server.name :sumneko_lua)
- (let [sumneko-lua-opts (require :config.lsp.settings.sumneko-lua)]
- (vim.tbl_deep_extend :force sumneko-lua-opts.settings opts)))
- (when (= server.name :pyright)
- (let [pyright-opts (require :config.lsp.settings.pyright)]
- (vim.tbl_deep_extend :force pyright-opts.settings opts)))
- opts)
-
+ (when (= server.name :jsonls)
+ (let [jsonls-opts (require :config.lsp.settings.jsonls)]
+ (vim.tbl_deep_extend :force jsonls-opts opts)))
+ (when (= server.name :sumneko_lua)
+ (let [sumneko-lua-opts (require :config.lsp.settings.sumneko-lua)]
+ (vim.tbl_deep_extend :force sumneko-lua-opts.settings opts)))
+ (when (= server.name :pyright)
+ (let [pyright-opts (require :config.lsp.settings.pyright)]
+ (vim.tbl_deep_extend :force pyright-opts.settings opts))) opts)
(let [lsp-installer (util.load-plugin :nvim-lsp-installer)]
(lsp-installer.on_server_ready (fn [server]
- (let [opts (get-server-opts server)]
- (server:setup opts)))))
+ (let [opts (get-server-opts server)]
+ (server:setup opts)))))
diff --git a/fnl/config/lsp/null-ls.fnl b/fnl/config/lsp/null-ls.fnl
index c5b4aef..f046ee8 100644
--- a/fnl/config/lsp/null-ls.fnl
+++ b/fnl/config/lsp/null-ls.fnl
@@ -1,29 +1,26 @@
;; Adds LSP diagnostics and formatting.
-(module config.lsp.null-ls
- {autoload {util util}})
+(module config.lsp.null-ls {autoload {util util}})
(let [null-ls (util.load-plugin :null-ls)]
- (let [formatting null_ls.builtins.formatting
+ (let [formatting null_ls.builtins.formatting
diagnostics null_ls.builtins.diagnostics]
- (null-ls.setup
- {:debug false
- :sources [
- diagnostics.flake8
- diagnostics.golangci_lint
- diagnostics.jsonlint
- diagnostics.shellcheck
- diagnostics.yamllint
- (formatting.black.with { :extra_args [ "--fast" ] })
- formatting.erlfmt
- formatting.fourmolu
- formatting.gofmt
- formatting.goimports
- formatting.nixfmt
- (formatting.prettier.with {
- :extra_args [ "--no-semi" "--single-quote" "--jsx-single-quote" ]
- })
- formatting.rustfmt
- formatting.shfmt
- formatting.sqlformat
- formatting.stylua
- formatting.terraform_fmt]})))
+ (null-ls.setup {:debug false
+ :sources [diagnostics.flake8
+ diagnostics.golangci_lint
+ diagnostics.jsonlint
+ diagnostics.shellcheck
+ diagnostics.yamllint
+ (formatting.black.with {:extra_args [:--fast]})
+ formatting.erlfmt
+ formatting.fourmolu
+ formatting.gofmt
+ formatting.goimports
+ formatting.nixfmt
+ (formatting.prettier.with {:extra_args [:--no-semi
+ :--single-quote
+ :--jsx-single-quote]})
+ formatting.rustfmt
+ formatting.shfmt
+ formatting.sqlformat
+ formatting.stylua
+ formatting.terraform_fmt]})))
diff --git a/fnl/config/lsp/settings/jsonls.fnl b/fnl/config/lsp/settings/jsonls.fnl
index c1cb710..73e8975 100644
--- a/fnl/config/lsp/settings/jsonls.fnl
+++ b/fnl/config/lsp/settings/jsonls.fnl
@@ -1,16 +1,12 @@
;; Json schema store catalog language server.
-(module config.lsp.settings.jsonls
- {autoload {util util}})
+(module config.lsp.settings.jsonls {autoload {util util}})
(let [schemastore (util.load-plugin :schemastore)]
- (schemastore.setup
- {:init_options {
- :providerFormatter false}
- :settings {
- :json {
- :schemas (schemastore.json.schemas)}}
- :setup {
- :commands {
- :Format [
- (fn []
- (vim.lsp.buf.range_formatting [] [ 0 0 ] [ (vim.fn.line "$" 0) ]))]}}}))
+ (schemastore.setup {:init_options {:providerFormatter false}
+ :settings {:json {:schemas (schemastore.json.schemas)}}
+ :setup {:commands {:Format [(fn []
+ (vim.lsp.buf.range_formatting []
+ [0
+ 0]
+ [(vim.fn.line "$"
+ 0)]))]}}}))
diff --git a/fnl/config/lsp/settings/pyright.fnl b/fnl/config/lsp/settings/pyright.fnl
index bb39ab5..7269469 100644
--- a/fnl/config/lsp/settings/pyright.fnl
+++ b/fnl/config/lsp/settings/pyright.fnl
@@ -1,8 +1,4 @@
;; Config for pyright language server.
(module config.lsp.settings.pyright)
-(def settings
- {:settings
- {:python
- {:analysis
- {:typeCheckingMode "off"}}}})
+(def settings {:settings {:python {:analysis {:typeCheckingMode :off}}}})
diff --git a/fnl/config/lsp/settings/sumneko-lua.fnl b/fnl/config/lsp/settings/sumneko-lua.fnl
index e39c801..cc8e9ab 100644
--- a/fnl/config/lsp/settings/sumneko-lua.fnl
+++ b/fnl/config/lsp/settings/sumneko-lua.fnl
@@ -1,19 +1,23 @@
;; Config for a Lua language server.
(module config.lsp.settings.sumneko-lua)
-(def- workspace
- {:library {(vim.fn.expand "$VIMRUNTIME/lua") true
- (vim.fn.expand "$VIMRUNTIME/lua/vim/lsp") true}})
+(def- workspace
+ {:library {(vim.fn.expand :$VIMRUNTIME/lua) true
+ (vim.fn.expand :$VIMRUNTIME/lua/vim/lsp) true}})
-(def- diagnostics
- {:globals ["vim" "map" "filter" "range" "reduce" "head" "tail" "nth" "use" "describe" "it" "dump"]})
+(def- diagnostics {:globals [:vim
+ :map
+ :filter
+ :range
+ :reduce
+ :head
+ :tail
+ :nth
+ :use
+ :describe
+ :it
+ :dump]})
-(def- runtime
- {:version "LuaJIT"
- :path (vim.split package.path ";")})
+(def- runtime {:version :LuaJIT :path (vim.split package.path ";")})
-(def settings
- {:settings {
- :Lua {
- :diagnostics diagnostics
- :workspace workspace}}})
+(def settings {:settings {:Lua {: diagnostics : workspace}}})
diff --git a/fnl/config/lualine.fnl b/fnl/config/lualine.fnl
index 68f2f4f..5ab0920 100644
--- a/fnl/config/lualine.fnl
+++ b/fnl/config/lualine.fnl
@@ -1,60 +1,48 @@
;; Statusbar.
-(module config.lualine
- {autoload {util util}})
+(module config.lualine {autoload {util util}})
-(defn- hide-in-width []
- (> (vim.fn.winwidth 0) 80))
+(defn- hide-in-width [] (> (vim.fn.winwidth 0) 80))
-(def- diagnostics {
- 1 "diagnostics"
- :sources [ "nvim_diagnostic" ]
- :sections [ "error" "warn" ]
- :symbols { :error " " :warn " " }
- :colored false
- :update_in_insert false
- :always_visible true})
+(def- diagnostics {1 :diagnostics
+ :sources [:nvim_diagnostic]
+ :sections [:error :warn]
+ :symbols {:error " " :warn " "}
+ :colored false
+ :update_in_insert false
+ :always_visible true})
-(def- diff {
- 1 "diff"
- :colored false
- :symbols { :added " " :modified " " :removed " " }
- :cond hide-in-width})
+(def- diff {1 :diff
+ :colored false
+ :symbols {:added " " :modified " " :removed " "}
+ :cond hide-in-width})
-(def- branch {
- 1 "b:gitsigns_head"
- :icon " "
- :cond hide-in-width})
+(def- branch {1 "b:gitsigns_head" :icon " " :cond hide-in-width})
-(def- filetype {
- 1 "filetype"
- :cond hide_in_width
- :color {}})
+(def- filetype {1 :filetype :cond hide_in_width :color {}})
(let [lualine (util.load-plugin :lualine)]
- (lualine.setup {
- :options {
- :icons_enabled true
- :theme "auto"
- :component_separators { :left "" :right "" }
- :section_separators { :left "" :right "" }
- :disabled_filetypes [ "alpha" "dashboard" "NvimTree" "Outline" ]
- :always_divide_middle true
- }
- :sections {
- :lualine_a [ "mode" ]
- :lualine_b [ branch "filename" ]
- :lualine_c [ diff ]
- :lualine_x [ diagnostics filetype ]
- :lualine_y {}
- :lualine_z [ "location" "progress" "encoding" ]
- }
- :inactive_sections {
- :lualine_a [ "mode" ]
- :lualine_b [ "filename" ]
- :lualine_c {}
- :lualine_x {}
- :lualine_y {}
- :lualine_z [ "location" "progress" "encoding" ]
- }
- :tabline {}
- :extensions {}}))
+ (lualine.setup {:options {:icons_enabled true
+ :theme :auto
+ :component_separators {:left "" :right ""}
+ :section_separators {:left "" :right ""}
+ :disabled_filetypes [:alpha
+ :dashboard
+ :NvimTree
+ :Outline]
+ :always_divide_middle true}
+ :sections {:lualine_a [:mode]
+ :lualine_b [branch :filename]
+ :lualine_c [diff]
+ :lualine_x [diagnostics filetype]
+ :lualine_y {}
+ :lualine_z [:location :progress :encoding]}
+ :inactive_sections {:lualine_a [:mode]
+ :lualine_b [:filename]
+ :lualine_c {}
+ :lualine_x {}
+ :lualine_y {}
+ :lualine_z [:location
+ :progress
+ :encoding]}
+ :tabline {}
+ :extensions {}}))
diff --git a/fnl/config/ncomment.fnl b/fnl/config/ncomment.fnl
index 2c983df..217ba6d 100644
--- a/fnl/config/ncomment.fnl
+++ b/fnl/config/ncomment.fnl
@@ -1,25 +1,23 @@
;; Language aware commenting.
-(module config.ncomment
- {autoload {util util}})
+(module config.ncomment {autoload {util util}})
+(defn- get-type [ctx U] (or (and (= ctx.ctype U.ctype.line) :__default)
+ :__multiline))
-(defn- get-type [ctx U]
- (or (and (= ctx.ctype U.ctype.line) :__default) :__multiline))
-
-(defn- get-location [ctx U]
- (if (= ctx.ctype U.ctype.block)
- ((require :ts_context_commentstring.utils).get_cursor_location)
- (or (= ctx.motion U.motion.v) (= ctx.motion U.cmotion.V))
- ((require :ts_context_commentstring.utils).get_visual_start_location)
- nil))
+(defn- get-location [ctx U] (if (= ctx.ctype U.ctype.block)
+ ((require :ts_context_commentstring.utils) .get_cursor_location)
+ (or (= ctx.motion U.motion.v)
+ (= ctx.motion U.cmotion.V))
+ ((require :ts_context_commentstring.utils) .get_visual_start_location)
+ nil))
(defn- pre-hook [ctx]
- (let [U (require :Comment.utils)]
- ((require :ts_context_commentstring.internal).calculate_commentstring {
- :key (get-type ctx U)
- :location (get-location ctx U)})))
+ (let [U (require :Comment.utils)]
+ ((require :ts_context_commentstring.internal) .calculate_commentstring
+ {:key (get-type ctx U)
+ :location (get-location ctx
+ U)})))
(let [ncomment (util.load-plugin :Comment)]
- (ncomment.setup
- {:pre_hook (fn [ctx]
- (pre-hook ctx))}))
+ (ncomment.setup {:pre_hook (fn [ctx]
+ (pre-hook ctx))}))
diff --git a/fnl/config/nvim-tree.fnl b/fnl/config/nvim-tree.fnl
index eb579f7..672e370 100644
--- a/fnl/config/nvim-tree.fnl
+++ b/fnl/config/nvim-tree.fnl
@@ -1,105 +1,82 @@
;; A file explorer.
-(module config.nvim-tree
- {autoload {util util
- nvim aniseed.nvim}})
+(module config.nvim-tree {autoload {util util nvim aniseed.nvim}})
-(set nvim.g.nvim_tree_show_icons
- {:default ""
- :symlink ""
- :git {
- :unstaged ""
- :staged "S"
- :unmerged ""
- :renamed "➜"
- :deleted ""
- :untracked "U"
- :ignored "◌"
- }
- :folder {
- :default ""
- :open ""
- :empty ""
- :empty_open ""
- :symlink ""}})
+(set nvim.g.nvim_tree_show_icons
+ {:default ""
+ :symlink ""
+ :git {:unstaged ""
+ :staged :S
+ :unmerged ""
+ :renamed "➜"
+ :deleted ""
+ :untracked :U
+ :ignored "◌"}
+ :folder {:default ""
+ :open ""
+ :empty ""
+ :empty_open ""
+ :symlink ""}})
(let [nvim-tree (util.load-plugin :nvim-tree)
nvim-tree-config (util.load-plugin :nvim-tree.config)]
(let [tree-cb nvim-tree-config.nvim_tree_callback]
- (nvim-tree.setup
- {:auto_reload_on_write true
- :disable_netrw false
- :hide_root_folder false
- :hijack_cursor false
- :hijack_netrw true
- :hijack_unnamed_buffer_when_opening false
- :ignore_buffer_on_setup false
- :open_on_setup false
- :open_on_tab false
- :sort_by "name"
- :update_cwd true
- :view {
- :width 30
- :height 30
- :side "left"
- :preserve_window_proportions false
- :number false
- :relativenumber false
- :signcolumn "yes"
- :mappings {
- :custom_only false
- :list [
- { :key [ "l" "<CR>" "o" ] :cb (tree_cb "edit") }
- { :key "h" :cb (tree_cb "close_node") }
- { :key "v" :cb (tree_cb "vsplit") }]}}
- :hijack_directories {
- :enable true
- :auto_open true}
- :update_focused_file {
- :enable true
- :update_cwd true
- :ignore_list {}}
- :ignore_ft_on_setup [ "startify" "dashboard" "alpha" ]
- :system_open {
- :cmd nil
- :args {}}
- :diagnostics {
- :enable true
- :show_on_dirs false
- :icons {
- :hint ""
- :info ""
- :warning ""
- :error ""}}
- :filters {
- :dotfiles false
- :custom {}
- :exclude {}}
- :git {
- :enable true
- :ignore true
- :timeout 400}
- :actions {
- :change_dir {
- :enable true
- :global false}
- :open_file {
- :quit_on_open false
- :resize_window false
- :window_picker {
- :enable true
- :chars "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890"
- :exclude {
- :filetype [ "notify" "packer" "qf" "diff" "fugitive" "fugitiveblame" ]
- :buftype [ "nofile" "terminal" "help" ]}}}}
- :trash {
- :cmd "trash"
- :require_confirm true}
- :log {
- :enable false
- :truncate false
- :types {
- :all false
- :config false
- :copy_paste false
- :git false
- :profile false}}})))
+ (nvim-tree.setup {:auto_reload_on_write true
+ :disable_netrw false
+ :hide_root_folder false
+ :hijack_cursor false
+ :hijack_netrw true
+ :hijack_unnamed_buffer_when_opening false
+ :ignore_buffer_on_setup false
+ :open_on_setup false
+ :open_on_tab false
+ :sort_by :name
+ :update_cwd true
+ :view {:width 30
+ :height 30
+ :side :left
+ :preserve_window_proportions false
+ :number false
+ :relativenumber false
+ :signcolumn :yes
+ :mappings {:custom_only false
+ :list [{:key [:l :<CR> :o]
+ :cb (tree_cb :edit)}
+ {:key :h
+ :cb (tree_cb :close_node)}
+ {:key :v :cb (tree_cb :vsplit)}]}}
+ :hijack_directories {:enable true :auto_open true}
+ :update_focused_file {:enable true
+ :update_cwd true
+ :ignore_list {}}
+ :ignore_ft_on_setup [:startify :dashboard :alpha]
+ :system_open {:cmd nil :args {}}
+ :diagnostics {:enable true
+ :show_on_dirs false
+ :icons {:hint ""
+ :info ""
+ :warning ""
+ :error ""}}
+ :filters {:dotfiles false :custom {} :exclude {}}
+ :git {:enable true :ignore true :timeout 400}
+ :actions {:change_dir {:enable true :global false}
+ :open_file {:quit_on_open false
+ :resize_window false
+ :window_picker {:enable true
+ :chars :ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890
+ :exclude {:filetype [:notify
+ :packer
+ :qf
+ :diff
+ :fugitive
+ :fugitiveblame]
+ :buftype [:nofile
+ :terminal
+ :help]}}}}
+ :trash {:cmd :trash :require_confirm true}
+ :log {:enable false
+ :truncate false
+ :types {:all false
+ :config false
+ :copy_paste false
+ :git false
+ :profile false}}})))
diff --git a/fnl/config/orgmode.fnl b/fnl/config/orgmode.fnl
index d8af6d4..e55f2bc 100644
--- a/fnl/config/orgmode.fnl
+++ b/fnl/config/orgmode.fnl
@@ -1,16 +1,17 @@
;; Orgmode for nvim.
-(module config.orgmode
- {autoload {util util}})
+(module config.orgmode {autoload {util util}})
(let [orgmode (util.load-plugin :orgmode)]
(do
(orgmode.setup_ts_grammar)
- (orgmode.setup
- {:org_agenda_files [ "~/.local/share/org/**/*" ]
- :org_default_notes_file "~/.local/share/org/refile.org"
- :org_agenda_templates {
- :t { :description "Task" :template "* TODO %?\n %u" }
- :m {
- :description "Meeting"
- :template "* MEETING %? :MEETING:\n :LOGBOOK:\n CLOCK: %U\n :END:"}
- :n { :description "Note" :template "* NOTE %? :NOTE:\n %u" }}})))
+ (orgmode.setup {:org_agenda_files ["~/.local/share/org/**/*"]
+ :org_default_notes_file "~/.local/share/org/refile.org"
+ :org_agenda_templates {:t {:description :Task
+ :template "* TODO %?\n %u"}
+ :m {:description :Meeting
+ :template "* MEETING %? :MEETING:
+ :LOGBOOK:
+ CLOCK: %U
+ :END:"}
+ :n {:description :Note
+ :template "* NOTE %? :NOTE:\n %u"}}})))
diff --git a/fnl/config/packer.fnl b/fnl/config/packer.fnl
index 0c5611b..8354c07 100644
--- a/fnl/config/packer.fnl
+++ b/fnl/config/packer.fnl
@@ -1,9 +1,7 @@
;; Load packer config
-(module config.packer
- {autoload {util util}})
+(module config.packer {autoload {util util}})
(let [packer (util.load-plugin :packer)]
- (packer.init {
- :display {
- :open_fn (fn []
- ((require :packer.util).float {:border :rounded}))}}))
+ (packer.init {:display {:open_fn (fn []
+ ((require :packer.util) .float
+ {:border :rounded}))}}))
diff --git a/fnl/config/project.fnl b/fnl/config/project.fnl
index e2e6371..7d50fee 100644
--- a/fnl/config/project.fnl
+++ b/fnl/config/project.fnl
@@ -1,15 +1,19 @@
;; Provides project management.
-(module config.project
- {autoload {util util}})
+(module config.project {autoload {util util}})
(let [project (util.load-plugin :project_nvim)]
- (project.setup
- {:active true
- :on_config_done nil
- :manual_mode false
- :detection_methods [ :patterns ]
- :patterns [ :git :_darcs :.hg :.bzr :.svn :Makefile :package.json ]
- :show_hidden false
- :silent_chdir true
- :ignore_lsp {}
- :datapath (vim.fn.stdpath :data)}))
+ (project.setup {:active true
+ :on_config_done nil
+ :manual_mode false
+ :detection_methods [:patterns]
+ :patterns [:git
+ :_darcs
+ :.hg
+ :.bzr
+ :.svn
+ :Makefile
+ :package.json]
+ :show_hidden false
+ :silent_chdir true
+ :ignore_lsp {}
+ :datapath (vim.fn.stdpath :data)}))
diff --git a/fnl/config/spectre.fnl b/fnl/config/spectre.fnl
index 3a05c0b..5529714 100644
--- a/fnl/config/spectre.fnl
+++ b/fnl/config/spectre.fnl
@@ -1,99 +1,64 @@
;; Find and replace.
-(module config.spectre
- {autoload {util util}})
+(module config.spectre {autoload {util util}})
(let [spectre (util.load-plugin :spectre)]
- (spectre.setup
- {:color_devicons true
- :highlight {
- :ui "String"
- :search "DiffChange"
- :replace "DiffDelete"}
- :mapping {
- :toggle_line {
- :map "t"
- :cmd "<cmd>lua require('spectre').toggle_line()<CR>"
- :desc "toggle current item"}
- :enter_file {
- :map "<cr>"
- :cmd "<cmd>lua require('spectre.actions').select_entry()<CR>"
- :desc "goto current file"}
- :send_to_qf {
- :map "Q"
- :cmd "<cmd>lua require('spectre.actions').send_to_qf()<CR>"
- :desc "send all item to quickfix"}
- :replace_cmd {
- :map "c"
- :cmd "<cmd>lua require('spectre.actions').replace_cmd()<CR>"
- :desc "input replace vim command"}
- :show_option_menu {
- :map "o"
- :cmd "<cmd>lua require('spectre').show_options()<CR>"
- :desc "show option"}
- :run_replace {
- :map "R"
- :cmd "<cmd>lua require('spectre.actions').run_replace()<CR>"
- :desc "replace all"}
- :change_view_mode {
- :map "m"
- :cmd "<cmd>lua require('spectre').change_view()<CR>"
- :desc "change result view mode"}
- :toggle_ignore_case {
- :map "I"
- :cmd "<cmd>lua require('spectre').change_options('ignore-case')<CR>"
- :desc "toggle ignore case"}
- :toggle_ignore_hidden {
- :map "H"
- :cmd "<cmd>lua require('spectre').change_options('hidden')<CR>"
- :desc "toggle search hidden"}}
- :find_engine {
- :rg {
- :cmd "rg"
- :args [
- "--color=never"
- "--no-heading"
- "--with-filename"
- "--line-number"
- "--column"]
- :options {
- :ignore-case {
- :value "--ignore-case"
- :icon "[I]"
- :desc "ignore case"}
- :hidden {
- :value "--hidden"
- :desc "hidden file"
- :icon "[H]"}}}
- :ag {
- :cmd "ag"
- :args [
- "--vimgrep"
- "-s"
- ]
- :options {
- :ignore-case {
- :value "-i"
- :icon "[I]"
- :desc "ignore case"}
- :hidden {
- :value "--hidden"
- :desc "hidden file"
- :icon "[H]"}}}}
- :replace_engine {
- :sed {
- :cmd "sed"
- :args nil}
- :options {
- :ignore-case {
- :value "--ignore-case"
- :icon "[I]"
- :desc "ignore case"}}}
- :default {
- :find {
- :cmd "rg"
- :options [ "ignore-case" ]}
- :replace {
- :cmd "sed"}}
- :replace_vim_cmd "cdo"
- :is_open_target_win true
- :is_insert_mode false}))
+ (spectre.setup {:color_devicons true
+ :highlight {:ui :String
+ :search :DiffChange
+ :replace :DiffDelete}
+ :mapping {:toggle_line {:map :t
+ :cmd "<cmd>lua require('spectre').toggle_line()<CR>"
+ :desc "toggle current item"}
+ :enter_file {:map :<cr>
+ :cmd "<cmd>lua require('spectre.actions').select_entry()<CR>"
+ :desc "goto current file"}
+ :send_to_qf {:map :Q
+ :cmd "<cmd>lua require('spectre.actions').send_to_qf()<CR>"
+ :desc "send all item to quickfix"}
+ :replace_cmd {:map :c
+ :cmd "<cmd>lua require('spectre.actions').replace_cmd()<CR>"
+ :desc "input replace vim command"}
+ :show_option_menu {:map :o
+ :cmd "<cmd>lua require('spectre').show_options()<CR>"
+ :desc "show option"}
+ :run_replace {:map :R
+ :cmd "<cmd>lua require('spectre.actions').run_replace()<CR>"
+ :desc "replace all"}
+ :change_view_mode {:map :m
+ :cmd "<cmd>lua require('spectre').change_view()<CR>"
+ :desc "change result view mode"}
+ :toggle_ignore_case {:map :I
+ :cmd "<cmd>lua require('spectre').change_options('ignore-case')<CR>"
+ :desc "toggle ignore case"}
+ :toggle_ignore_hidden {:map :H
+ :cmd "<cmd>lua require('spectre').change_options('hidden')<CR>"
+ :desc "toggle search hidden"}}
+ :find_engine {:rg {:cmd :rg
+ :args [:--color=never
+ :--no-heading
+ :--with-filename
+ :--line-number
+ :--column]
+ :options {:ignore-case {:value :--ignore-case
+ :icon "[I]"
+ :desc "ignore case"}
+ :hidden {:value :--hidden
+ :desc "hidden file"
+ :icon "[H]"}}}
+ :ag {:cmd :ag
+ :args [:--vimgrep :-s]
+ :options {:ignore-case {:value :-i
+ :icon "[I]"
+ :desc "ignore case"}
+ :hidden {:value :--hidden
+ :desc "hidden file"
+ :icon "[H]"}}}}
+ :replace_engine {:sed {:cmd :sed :args nil}
+ :options {:ignore-case {:value :--ignore-case
+ :icon "[I]"
+ :desc "ignore case"}}}
+ :default {:find {:cmd :rg :options [:ignore-case]}
+ :replace {:cmd :sed}}
+ :replace_vim_cmd :cdo
+ :is_open_target_win true
+ :is_insert_mode false}))
diff --git a/fnl/config/telescope.fnl b/fnl/config/telescope.fnl
index 86f5f5c..90a6f71 100644
--- a/fnl/config/telescope.fnl
+++ b/fnl/config/telescope.fnl
@@ -1,98 +1,83 @@
;; Telescope a highly extendable fuzzy finder over lists.
-(module config.telescope
- {autoload {util util}})
+(module config.telescope {autoload {util util}})
(let [telescope (util.load-plugin :telescope)]
(let [actions (require :telescope.actions)]
- (telescope.setup {
- :defaults {
- :prompt_prefix " "
- :selection_caret " "
- :path_display [ "smart" ]
- :initial_mode "insert"
- :selection_strategy "reset"
- :sorting_strategy "ascending"
- :layout_strategy "horizontal"
- :layout_config {
- :prompt_position "top"
- :preview_cutoff 120
- :horizontal { :mirror false }
- :vertical { :mirror false }}
- :vimgrep_arguments [
- "rg"
- "--color=never"
- "--no-heading"
- "--with-filename"
- "--line-number"
- "--column"
- "--smart-case"
- "--hidden"
- ]
- :mappings {
- :i {
- :<C-n> actions.cycle_history_next
- :<C-p> actions.cycle_history_prev
-
- :<C-j> actions.move_selection_next
- :<C-k> actions.move_selection_previous
-
- :<C-c> actions.close
-
- :<Down> actions.move_selection_next
- :<Up> actions.move_selection_previous
- :<CR> actions.select_default
- :<C-x> actions.select_horizontal
- :<C-v> actions.select_vertical
- :<C-t> actions.select_tab
-
- :<C-u> actions.preview_scrolling_up
- :<C-d> actions.preview_scrolling_down
-
- :<PageUp> actions.results_scrolling_up
- :<PageDown> actions.results_scrolling_down
-
- :<Tab> (+ actions.toggle_selection actions.move_selection_worse)
- :<S-Tab> (+ actions.toggle_selection actions.move_selection_better)
- :<C-q> (+ actions.send_to_qflist actions.open_qflist)
- :<M-q> (+ actions.send_selected_to_qflist actions.open_qflist)
- :<C-l> actions.complete_tag
- :<C-_> actions.which_key}
- :n {
- :<esc> actions.close
- :<CR> actions.select_default
- :<C-x> actions.select_horizontal
- :<C-v> actions.select_vertical
- :<C-t> actions.select_tab
-
- :<Tab> (+ actions.toggle_selection actions.move_selection_worse)
- :<S-Tab> (+ actions.toggle_selection actions.move_selection_better)
- :<C-q> (+ actions.send_to_qflist actions.open_qflist)
- :<M-q> (+ actions.send_selected_to_qflist actions.open_qflist)
-
- :j actions.move_selection_next
- :k actions.move_selection_previous
- :H actions.move_to_top
- :M actions.move_to_middle
- :L actions.move_to_bottom
-
- :<Down> actions.move_selection_next
- :<Up> actions.move_selection_previous
- :gg actions.move_to_top
- :G actions.move_to_bottom
-
- :<C-u> actions.preview_scrolling_up
- :<C-d> actions.preview_scrolling_down
-
- :<PageUp> actions.results_scrolling_up
- :<PageDown> actions.results_scrolling_down
-
- :? actions.which_key}}}
- :extensions {
- :fzf {
- :fuzzy true
- :override_generic_sorter true
- :override_file_sorter true
- :case_mode "smart_case"}}})
+ (telescope.setup {:defaults {:prompt_prefix " "
+ :selection_caret " "
+ :path_display [:smart]
+ :initial_mode :insert
+ :selection_strategy :reset
+ :sorting_strategy :ascending
+ :layout_strategy :horizontal
+ :layout_config {:prompt_position :top
+ :preview_cutoff 120
+ :horizontal {:mirror false}
+ :vertical {:mirror false}}
+ :vimgrep_arguments [:rg
+ :--color=never
+ :--no-heading
+ :--with-filename
+ :--line-number
+ :--column
+ :--smart-case
+ :--hidden]
+ :mappings {:i {:<C-n> actions.cycle_history_next
+ :<C-p> actions.cycle_history_prev
+ :<C-j> actions.move_selection_next
+ :<C-k> actions.move_selection_previous
+ :<C-c> actions.close
+ :<Down> actions.move_selection_next
+ :<Up> actions.move_selection_previous
+ :<CR> actions.select_default
+ :<C-x> actions.select_horizontal
+ :<C-v> actions.select_vertical
+ :<C-t> actions.select_tab
+ :<C-u> actions.preview_scrolling_up
+ :<C-d> actions.preview_scrolling_down
+ :<PageUp> actions.results_scrolling_up
+ :<PageDown> actions.results_scrolling_down
+ :<Tab> (+ actions.toggle_selection
+ actions.move_selection_worse)
+ :<S-Tab> (+ actions.toggle_selection
+ actions.move_selection_better)
+ :<C-q> (+ actions.send_to_qflist
+ actions.open_qflist)
+ :<M-q> (+ actions.send_selected_to_qflist
+ actions.open_qflist)
+ :<C-l> actions.complete_tag
+ :<C-_> actions.which_key}
+ :n {:<esc> actions.close
+ :<CR> actions.select_default
+ :<C-x> actions.select_horizontal
+ :<C-v> actions.select_vertical
+ :<C-t> actions.select_tab
+ :<Tab> (+ actions.toggle_selection
+ actions.move_selection_worse)
+ :<S-Tab> (+ actions.toggle_selection
+ actions.move_selection_better)
+ :<C-q> (+ actions.send_to_qflist
+ actions.open_qflist)
+ :<M-q> (+ actions.send_selected_to_qflist
+ actions.open_qflist)
+ :j actions.move_selection_next
+ :k actions.move_selection_previous
+ :H actions.move_to_top
+ :M actions.move_to_middle
+ :L actions.move_to_bottom
+ :<Down> actions.move_selection_next
+ :<Up> actions.move_selection_previous
+ :gg actions.move_to_top
+ :G actions.move_to_bottom
+ :<C-u> actions.preview_scrolling_up
+ :<C-d> actions.preview_scrolling_down
+ :<PageUp> actions.results_scrolling_up
+ :<PageDown> actions.results_scrolling_down
+ :? actions.which_key}}}
+ :extensions {:fzf {:fuzzy true
+ :override_generic_sorter true
+ :override_file_sorter true
+ :case_mode :smart_case}}})
(telescope.load_extension :fzf)
(telescope.load_extension :file_browser)
(telescope.load_extension :projects)))
diff --git a/fnl/config/treesitter.fnl b/fnl/config/treesitter.fnl
index 357859f..a76ff32 100644
--- a/fnl/config/treesitter.fnl
+++ b/fnl/config/treesitter.fnl
@@ -1,20 +1,15 @@
;; 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 util}})
+(module config.treesitter {autoload {util util}})
(let [treesitter (util.load-plugin :nvim-treesitter.configs)]
- (treesitter.setup
- {:ensure_installed "all"
- :sync_install false
- :ignore_install [ "" ]
- :autopairs { :enable true }
- :highlight {
- :enable true
- :disable [ "org" ]
- :additional_vim_regex_highlighting [ "org" ]}}
- :context_commentstring {
- :enable true
- :enable_autocmd false}
- :indent { :enable true :disable [ "yaml" "python" "css" ] }
- :playground { :enable true }))
+ (treesitter.setup {:ensure_installed :all
+ :sync_install false
+ :ignore_install [""]
+ :autopairs {:enable true}
+ :highlight {:enable true
+ :disable [:org]
+ :additional_vim_regex_highlighting [:org]}}
+ :context_commentstring {:enable true :enable_autocmd false}
+ :indent {:enable true :disable [:yaml :python :css]}
+ :playground {:enable true}))
diff --git a/fnl/config/which-key.fnl b/fnl/config/which-key.fnl
index 8c01ae6..020acd3 100644
--- a/fnl/config/which-key.fnl
+++ b/fnl/config/which-key.fnl
@@ -1,173 +1,126 @@
;; Which-key provides a pop-up meny for some key mappings.
-(module config.which-key
- {autoload {util util}})
+(module config.which-key {autoload {util util}})
-(def- setup {
- :plugins {
- :marks true
- :registers true
- :spelling {
- :enabled true
- :suggestions 20}
- :presets {
- :operators false
- :motions false
- :text_objects false
- :windows true
- :nav true
- :z true
- :g true}}
- :icons {
- :breadcrumb "»"
- :separator ""
- :group "+"}
- :popup_mappings {
- :scroll_down "<c-d>"
- :scroll_up "<c-u>"}
- :window {
- :border "rounded"
- :position "bottom"
- :margin [ 1 0 1 0 ]
- :padding [ 2 2 2 2 ]
- :winblend 0}
- :layout {
- :height { :min 4 :max 25 }
- :width { :min 20 :max 50 }
- :spacing 3
- :align "left"}
- :ignore_missing true
- :hidden [ "<silent>" "<cmd>" "<Cmd>" "<CR>" "call" "lua" "^:" "^ " ]
- :show_help true
- :triggers "auto"
- :triggers_blacklist {
- :i [ "j" "k" ]
- :v [ "j" "k" ]}})
+(def- setup {:plugins {:marks true
+ :registers true
+ :spelling {:enabled true :suggestions 20}
+ :presets {:operators false
+ :motions false
+ :text_objects false
+ :windows true
+ :nav true
+ :z true
+ :g true}}
+ :icons {:breadcrumb "»" :separator "" :group "+"}
+ :popup_mappings {:scroll_down :<c-d> :scroll_up :<c-u>}
+ :window {:border :rounded
+ :position :bottom
+ :margin [1 0 1 0]
+ :padding [2 2 2 2]
+ :winblend 0}
+ :layout {:height {:min 4 :max 25}
+ :width {:min 20 :max 50}
+ :spacing 3
+ :align :left}
+ :ignore_missing true
+ :hidden [:<silent> :<cmd> :<Cmd> :<CR> :call :lua "^:" "^ "]
+ :show_help true
+ :triggers :auto
+ :triggers_blacklist {:i [:j :k] :v [:j :k]}})
-(def- opts {
- :mode "n"
- :prefix "<leader>"
- :buffer nil
- :silent true
- :noremap true
- :nowait true})
+(def- opts {:mode :n
+ :prefix :<leader>
+ :buffer nil
+ :silent true
+ :noremap true
+ :nowait true})
-(def- mappings {
- :k [ "<cmd>lua require('Comment.api').toggle_current_linewise()<CR>" "Comment" ]
- :a [ "<cmd>Alpha<cr>" "Alpha" ]
- :b [
- "<cmd>lua require('telescope.builtin').buffers(require('telescope.themes').get_dropdown{previewer false})<cr>"
- "Buffers"
- ]
- :e [ "<cmd>NvimTreeToggle<cr>" "Explorer" ]
- :c [ "<cmd>Bdelete!<CR>" "Close Buffer" ]
- :n [ "<cmd>nohlsearch<CR>" "No Highlight" ]
- :f [
- "<cmd>lua require('telescope.builtin').find_files(require('telescope.themes').get_dropdown{previewer false})<cr>"
- "Find files"
- ]
- :F [ "<cmd>Telescope file_browser<cr>" "Browse files" ]
- :t [ "<cmd>Telescope live_grep theme=ivy<cr>" "Find Text" ]
- :P [ "<cmd>Telescope projects<cr>" "Projects" ]
- :z [ "<cmd>ZenMode<cr>" "Zen Mode" ]
- :v [ "<cmd>vsplit<cr>" "Vertical Split" ]
- :h [ "<cmd>split<cr>" "Horizontal Split" ]
- :p {
- :name "Packer"
- :c [ "<cmd>PackerCompile<cr>" "Compile" ]
- :i [ "<cmd>PackerInstall<cr>" "Install" ]
- :s [ "<cmd>PackerSync<cr>" "Sync" ]
- :S [ "<cmd>PackerStatus<cr>" "Status" ]
- :u [ "<cmd>PackerUpdate<cr>" "Update" ]}
- :g {
- :name "Git"
- :g [ "<cmd>lua _LAZYGIT_TOGGLE()<CR>" "Lazygit" ]
- :j [ "<cmd>lua require 'gitsigns'.next_hunk()<cr>" "Next Hunk" ]
- :k [ "<cmd>lua require 'gitsigns'.prev_hunk()<cr>" "Prev Hunk" ]
- :l [ "<cmd>lua require 'gitsigns'.blame_line()<cr>" "Blame" ]
- :p [ "<cmd>lua require 'gitsigns'.preview_hunk()<cr>" "Preview Hunk" ]
- :r [ "<cmd>lua require 'gitsigns'.reset_hunk()<cr>" "Reset Hunk" ]
- :R [ "<cmd>lua require 'gitsigns'.reset_buffer()<cr>" "Reset Buffer" ]
- :s [ "<cmd>lua require 'gitsigns'.stage_hunk()<cr>" "Stage Hunk" ]
- :u [
- "<cmd>lua require 'gitsigns'.undo_stage_hunk()<cr>"
- "Undo Stage Hunk"
- ]
- :o [ "<cmd>Telescope git_status<cr>" "Open changed file" ]
- :b [ "<cmd>Telescope git_branches<cr>" "Checkout branch" ]
- :c [ "<cmd>Telescope git_commits<cr>" "Checkout commit" ]
- :d [
- "<cmd>Gitsigns diffthis HEAD<cr>"
- "Diff"
- ]}
- :l {
- :name "LSP"
- :a [ "<cmd>lua vim.lsp.buf.code_action()<cr>" "Code Action" ]
- :d [
- "<cmd>Telescope lsp_document_diagnostics<cr>"
- "Document Diagnostics"
- ]
- :w [
- "<cmd>Telescope lsp_workspace_diagnostics<cr>"
- "Workspace Diagnostics"
- ]
- :f [ "<cmd>lua vim.lsp.buf.formatting()<cr>" "Format" ]
- :i [ "<cmd>LspInfo<cr>" "Info" ]
- :I [ "<cmd>LspInstallInfo<cr>" "Installer Info" ]
- :j [
- "<cmd>lua vim.lsp.diagnostic.goto_next()<CR>"
- "Next Diagnostic"
- ]
- :k [
- "<cmd>lua vim.lsp.diagnostic.goto_prev()<cr>"
- "Prev Diagnostic"
- ]
- :l [ "<cmd>lua vim.lsp.codelens.run()<cr>" "CodeLens Action" ]
- :q [ "<cmd>lua vim.lsp.diagnostic.set_loclist()<cr>" "Quickfix" ]
- :r [ "<cmd>lua vim.lsp.buf.rename()<cr>" "Rename" ]
- :s [ "<cmd>Telescope lsp_document_symbols<cr>" "Document Symbols" ]
- :S [
- "<cmd>Telescope lsp_dynamic_workspace_symbols<cr>"
- "Workspace Symbols"
- ]}
- :s {
- :name "Search"
- :b [ "<cmd>Telescope git_branches<cr>" "Checkout branch" ]
- :c [ "<cmd>Telescope colorscheme<cr>" "Colorscheme" ]
- :h [ "<cmd>Telescope help_tags<cr>" "Find Help" ]
- :M [ "<cmd>Telescope man_pages<cr>" "Man Pages" ]
- :r [ "<cmd>Telescope oldfiles<cr>" "Open Recent File" ]
- :R [ "<cmd>Telescope registers<cr>" "Registers" ]
- :k [ "<cmd>Telescope keymaps<cr>" "Keymaps" ]
- :C [ "<cmd>Telescope commands<cr>" "Commands" ]}
- :o {
- :name "Orgmode"
- :a [ "<cmd>lua require('orgmode').action('agenda.prompt')" "Open agenda prompt" ]
- :c [ "<cmd>lua require('orgmode').action('capture.prompt')" "Open capture prompt" ]}
- :r {
- :name "Replace"
- :r [ "<cmd>lua require('spectre').open()<cr>" "Replace" ]
- :w [
- "<cmd>lua require('spectre').open_visual({select_word=true})<cr>"
- "Replace Word"
- ]
- :f [ "<cmd>lua require('spectre').open_file_search()<cr>" "Replace Buffer" ]
- }
- :T {
- :name "Treesitter"
- :p [ "<cmd>TSPlaygroundToggle<cr>" "Playground" ]}})
+(def- mappings
+ {:k ["<cmd>lua require('Comment.api').toggle_current_linewise()<CR>"
+ :Comment]
+ :a [:<cmd>Alpha<cr> :Alpha]
+ :b ["<cmd>lua require('telescope.builtin').buffers(require('telescope.themes').get_dropdown{previewer false})<cr>"
+ :Buffers]
+ :e [:<cmd>NvimTreeToggle<cr> :Explorer]
+ :c [:<cmd>Bdelete!<CR> "Close Buffer"]
+ :n [:<cmd>nohlsearch<CR> "No Highlight"]
+ :f ["<cmd>lua require('telescope.builtin').find_files(require('telescope.themes').get_dropdown{previewer false})<cr>"
+ "Find files"]
+ :F ["<cmd>Telescope file_browser<cr>" "Browse files"]
+ :t ["<cmd>Telescope live_grep theme=ivy<cr>" "Find Text"]
+ :P ["<cmd>Telescope projects<cr>" :Projects]
+ :z [:<cmd>ZenMode<cr> "Zen Mode"]
+ :v [:<cmd>vsplit<cr> "Vertical Split"]
+ :h [:<cmd>split<cr> "Horizontal Split"]
+ :p {:name :Packer
+ :c [:<cmd>PackerCompile<cr> :Compile]
+ :i [:<cmd>PackerInstall<cr> :Install]
+ :s [:<cmd>PackerSync<cr> :Sync]
+ :S [:<cmd>PackerStatus<cr> :Status]
+ :u [:<cmd>PackerUpdate<cr> :Update]}
+ :g {:name :Git
+ :g ["<cmd>lua _LAZYGIT_TOGGLE()<CR>" :Lazygit]
+ :j ["<cmd>lua require 'gitsigns'.next_hunk()<cr>" "Next Hunk"]
+ :k ["<cmd>lua require 'gitsigns'.prev_hunk()<cr>" "Prev Hunk"]
+ :l ["<cmd>lua require 'gitsigns'.blame_line()<cr>" :Blame]
+ :p ["<cmd>lua require 'gitsigns'.preview_hunk()<cr>" "Preview Hunk"]
+ :r ["<cmd>lua require 'gitsigns'.reset_hunk()<cr>" "Reset Hunk"]
+ :R ["<cmd>lua require 'gitsigns'.reset_buffer()<cr>" "Reset Buffer"]
+ :s ["<cmd>lua require 'gitsigns'.stage_hunk()<cr>" "Stage Hunk"]
+ :u ["<cmd>lua require 'gitsigns'.undo_stage_hunk()<cr>"
+ "Undo Stage Hunk"]
+ :o ["<cmd>Telescope git_status<cr>" "Open changed file"]
+ :b ["<cmd>Telescope git_branches<cr>" "Checkout branch"]
+ :c ["<cmd>Telescope git_commits<cr>" "Checkout commit"]
+ :d ["<cmd>Gitsigns diffthis HEAD<cr>" :Diff]}
+ :l {:name :LSP
+ :a ["<cmd>lua vim.lsp.buf.code_action()<cr>" "Code Action"]
+ :d ["<cmd>Telescope lsp_document_diagnostics<cr>"
+ "Document Diagnostics"]
+ :w ["<cmd>Telescope lsp_workspace_diagnostics<cr>"
+ "Workspace Diagnostics"]
+ :f ["<cmd>lua vim.lsp.buf.formatting()<cr>" :Format]
+ :i [:<cmd>LspInfo<cr> :Info]
+ :I [:<cmd>LspInstallInfo<cr> "Installer Info"]
+ :j ["<cmd>lua vim.lsp.diagnostic.goto_next()<CR>" "Next Diagnostic"]
+ :k ["<cmd>lua vim.lsp.diagnostic.goto_prev()<cr>" "Prev Diagnostic"]
+ :l ["<cmd>lua vim.lsp.codelens.run()<cr>" "CodeLens Action"]
+ :q ["<cmd>lua vim.lsp.diagnostic.set_loclist()<cr>" :Quickfix]
+ :r ["<cmd>lua vim.lsp.buf.rename()<cr>" :Rename]
+ :s ["<cmd>Telescope lsp_document_symbols<cr>" "Document Symbols"]
+ :S ["<cmd>Telescope lsp_dynamic_workspace_symbols<cr>"
+ "Workspace Symbols"]}
+ :s {:name :Search
+ :b ["<cmd>Telescope git_branches<cr>" "Checkout branch"]
+ :c ["<cmd>Telescope colorscheme<cr>" :Colorscheme]
+ :h ["<cmd>Telescope help_tags<cr>" "Find Help"]
+ :M ["<cmd>Telescope man_pages<cr>" "Man Pages"]
+ :r ["<cmd>Telescope oldfiles<cr>" "Open Recent File"]
+ :R ["<cmd>Telescope registers<cr>" :Registers]
+ :k ["<cmd>Telescope keymaps<cr>" :Keymaps]
+ :C ["<cmd>Telescope commands<cr>" :Commands]}
+ :o {:name :Orgmode
+ :a ["<cmd>lua require('orgmode').action('agenda.prompt')"
+ "Open agenda prompt"]
+ :c ["<cmd>lua require('orgmode').action('capture.prompt')"
+ "Open capture prompt"]}
+ :r {:name :Replace
+ :r ["<cmd>lua require('spectre').open()<cr>" :Replace]
+ :w ["<cmd>lua require('spectre').open_visual({select_word=true})<cr>"
+ "Replace Word"]
+ :f ["<cmd>lua require('spectre').open_file_search()<cr>"
+ "Replace Buffer"]}
+ :T {:name :Treesitter :p [:<cmd>TSPlaygroundToggle<cr> :Playground]}})
-(def- vopts {
- :mode "v"
- :prefix "<leader>"
- :buffer nil
- :silent true
- :noremap true
- :nowait true})
+(def- vopts {:mode :v
+ :prefix :<leader>
+ :buffer nil
+ :silent true
+ :noremap true
+ :nowait true})
-(def- vmappings {
- :k [
- "<ESC><CMD>lua require('Comment.api').toggle_linewise_op(vim.fn.visualmode())<CR>"
- "Comment" ]})
+(def- vmappings {:k ["<ESC><CMD>lua require('Comment.api').toggle_linewise_op(vim.fn.visualmode())<CR>"
+ :Comment]})
(let [which-key (util.load-plugin :which-key)]
(do
diff --git a/fnl/config/zen.fnl b/fnl/config/zen.fnl
index e17d5d3..7133b50 100644
--- a/fnl/config/zen.fnl
+++ b/fnl/config/zen.fnl
@@ -1,18 +1,13 @@
;; Zen mode.
-(module config.zen
- {autoload {util util}})
+(module config.zen {autoload {util util}})
(let [zen-mode (util.load-plugin :zen-mode)]
- (zen-mode.setup
- {:window {
- :backdrop 1
- :height 1
- :width 120
- :options {
- :signcolumn "no"
- :number false
- :relativenumber false}}
- :plugins {
- :gitsigns { :enabled false }
- :tmux { :enabled true }
- :twilight { :enabled true }}}))
+ (zen-mode.setup {:window {:backdrop 1
+ :height 1
+ :width 120
+ :options {:signcolumn :no
+ :number false
+ :relativenumber false}}
+ :plugins {:gitsigns {:enabled false}
+ :tmux {:enabled true}
+ :twilight {:enabled true}}}))
diff --git a/fnl/init.fnl b/fnl/init.fnl
index bd91031..f62b1cf 100644
--- a/fnl/init.fnl
+++ b/fnl/init.fnl
@@ -1,5 +1,2 @@
;; Install, load settings, and load plugin configs.
-(module init
- {require {_ settings
- _ install
- _ config}})
+(module init {require {_ settings _ install _ config}})
diff --git a/fnl/install.fnl b/fnl/install.fnl
index d6eef2c..d80de8f 100644
--- a/fnl/install.fnl
+++ b/fnl/install.fnl
@@ -1,14 +1,9 @@
;; Installs plugins with packer.
-(module install
- {autoload {
- a aniseed.core
- plugins plugins
- packer packer}})
+(module install {autoload {a aniseed.core plugins plugins packer packer}})
(defn- install-plugins [plgs]
- (packer.startup (
- fn [use]
- (each [plugin opts (pairs plgs)]
- (use (a.assoc opts 1 plugin))))))
+ (packer.startup (fn [use]
+ (each [plugin opts (pairs plgs)]
+ (use (a.assoc opts 1 plugin))))))
(install-plugins plugins.plugins)
diff --git a/fnl/plugins.fnl b/fnl/plugins.fnl
index 3994ba7..23bf9cb 100644
--- a/fnl/plugins.fnl
+++ b/fnl/plugins.fnl
@@ -1,64 +1,64 @@
;; List of plugins
(module plugins)
-(def plugins
- {:wbthomason/packer.nvim {} ;; Have packer manage itself
- :lewis6991/impatient.nvim {}
- :Olical/aniseed {}
-
- :nvim-lua/popup.nvim {} ;; An implementation of the Popup API from vim in Neovim
- :nvim-lua/plenary.nvim {} ;; Useful lua functions used ny lots of plugins
-
- ;; Colorschemes
- :aktersnurra/no-clown-fiesta.nvim {}
-
- ;; LSP
- :hrsh7th/nvim-cmp {} ;; The completion plugin
- :hrsh7th/cmp-buffer {} ;; buffer completions
- :hrsh7th/cmp-path {} ;; path completions
- :hrsh7th/cmp-cmdline {} ;; cmdline completions
- :saadparwaiz1/cmp_luasnip {} ;; snippet completions
- :onsails/lspkind-nvim {}
- :hrsh7th/cmp-nvim-lsp {}
- :neovim/nvim-lspconfig {}
- :williamboman/nvim-lsp-installer {}
- :tamago324/nlsp-settings.nvim {}
- :jose-elias-alvarez/null-ls.nvim {}
- :b0o/SchemaStore.nvim {}
-
- ;; Snippets
- :L3MON4D3/LuaSnip {}
- :rafamadriz/friendly-snippets {}
-
- ;; Telescope
- :nvim-telescope/telescope.nvim { :requires "nvim-lua/plenary.nvim" }
- :nvim-telescope/telescope-fzf-native.nvim { :run "make" }
- :nvim-telescope/telescope-file-browser.nvim {}
-
- ;; Treesitter
- :nvim-treesitter/nvim-treesitter { :run ":TSUpdate" }
- :JoosepAlviste/nvim-ts-context-commentstring {}
- :nvim-treesitter/playground {}
-
- ;; Miscellaneous plugins
- :windwp/nvim-autopairs {}
- :numToStr/Comment.nvim {}
- :lewis6991/gitsigns.nvim {}
- :kyazdani42/nvim-web-devicons {}
- :kyazdani42/nvim-tree.lua {}
- :akinsho/bufferline.nvim {}
- :moll/vim-bbye {}
-
- :nvim-lualine/lualine.nvim { :requires { 1 "kyazdani42/nvim-web-devicons" :opt true }}
- :ahmedkhalf/project.nvim {}
- :goolord/alpha-nvim {}
- :antoinemadec/FixCursorHold.nvim {} ;; This is needed to fix lsp doc highlight
- :folke/which-key.nvim {}
- :folke/zen-mode.nvim {}
- :windwp/nvim-spectre {}
- :phaazon/hop.nvim {}
-
- :kevinhwang91/nvim-bqf { :event "BufRead" }
- :norcalli/nvim-colorizer.lua {}
- :max397574/better-escape.nvim {}
- :nvim-orgmode/orgmode {}})
+(def plugins {:wbthomason/packer.nvim {}
+ ;; Have packer manage itself
+ :lewis6991/impatient.nvim {}
+ :Olical/aniseed {}
+ :nvim-lua/popup.nvim {}
+ ;; An implementation of the Popup API from vim in Neovim
+ :nvim-lua/plenary.nvim {}
+ ;; Useful lua functions used ny lots of plugins
+ ;; Colorschemes
+ :aktersnurra/no-clown-fiesta.nvim {}
+ ;; LSP
+ :hrsh7th/nvim-cmp {}
+ ;; The completion plugin
+ :hrsh7th/cmp-buffer {}
+ ;; buffer completions
+ :hrsh7th/cmp-path {}
+ ;; path completions
+ :hrsh7th/cmp-cmdline {}
+ ;; cmdline completions
+ :saadparwaiz1/cmp_luasnip {}
+ ;; snippet completions
+ :onsails/lspkind-nvim {}
+ :hrsh7th/cmp-nvim-lsp {}
+ :neovim/nvim-lspconfig {}
+ :williamboman/nvim-lsp-installer {}
+ :tamago324/nlsp-settings.nvim {}
+ :jose-elias-alvarez/null-ls.nvim {}
+ :b0o/SchemaStore.nvim {}
+ ;; Snippets
+ :L3MON4D3/LuaSnip {}
+ :rafamadriz/friendly-snippets {}
+ ;; Telescope
+ :nvim-telescope/telescope.nvim {:requires :nvim-lua/plenary.nvim}
+ :nvim-telescope/telescope-fzf-native.nvim {:run :make}
+ :nvim-telescope/telescope-file-browser.nvim {}
+ ;; Treesitter
+ :nvim-treesitter/nvim-treesitter {:run ":TSUpdate"}
+ :JoosepAlviste/nvim-ts-context-commentstring {}
+ :nvim-treesitter/playground {}
+ ;; Miscellaneous plugins
+ :windwp/nvim-autopairs {}
+ :numToStr/Comment.nvim {}
+ :lewis6991/gitsigns.nvim {}
+ :kyazdani42/nvim-web-devicons {}
+ :kyazdani42/nvim-tree.lua {}
+ :akinsho/bufferline.nvim {}
+ :moll/vim-bbye {}
+ :nvim-lualine/lualine.nvim {:requires {1 :kyazdani42/nvim-web-devicons
+ :opt true}}
+ :ahmedkhalf/project.nvim {}
+ :goolord/alpha-nvim {}
+ :antoinemadec/FixCursorHold.nvim {}
+ ;; This is needed to fix lsp doc highlight
+ :folke/which-key.nvim {}
+ :folke/zen-mode.nvim {}
+ :windwp/nvim-spectre {}
+ :phaazon/hop.nvim {}
+ :kevinhwang91/nvim-bqf {:event :BufRead}
+ :norcalli/nvim-colorizer.lua {}
+ :max397574/better-escape.nvim {}
+ :nvim-orgmode/orgmode {}})
diff --git a/fnl/settings/init.fnl b/fnl/settings/init.fnl
index 5c21629..bff9c86 100644
--- a/fnl/settings/init.fnl
+++ b/fnl/settings/init.fnl
@@ -1,4 +1,2 @@
;; Load nvim settings
-(module settings
- {require {_ settings.options
- _ settings.keymaps}})
+(module settings {require {_ settings.options _ settings.keymaps}})
diff --git a/fnl/settings/keymaps.fnl b/fnl/settings/keymaps.fnl
index 1d431e5..52254cd 100644
--- a/fnl/settings/keymaps.fnl
+++ b/fnl/settings/keymaps.fnl
@@ -1,13 +1,11 @@
;; Custom keymappings.
-(module settings.keymaps
- {autoload {nvim aniseed.nvim}})
+(module settings.keymaps {autoload {nvim aniseed.nvim}})
(def- opts {:noremap true :silent true})
-(defn- map [mode lhs rhs opt]
- (nvim.set_keymap mode lhs rhs opt))
+(defn- map [mode lhs rhs opt] (nvim.set_keymap mode lhs rhs opt))
;;Remap space as leader key
-(map "" "<Space>" "<Nop>" opts)
+(map "" :<Space> :<Nop> opts)
(set nvim.g.mapleader " ")
(set nvim.g.maplocalleader " ")
@@ -21,35 +19,34 @@
;; Normal ;;
;; Better window navigation
-(map "n" "<C-h>" "<C-w>h" opts)
-(map "n" "<C-j>" "<C-w>j" opts)
-(map "n" "<C-k>" "<C-w>k" opts)
-(map "n" "<C-l>" "<C-w>l" opts)
-
+(map :n :<C-h> :<C-w>h opts)
+(map :n :<C-j> :<C-w>j opts)
+(map :n :<C-k> :<C-w>k opts)
+(map :n :<C-l> :<C-w>l opts)
;; Resize with arrows
-(map "n" "<C-Up>" ":resize -2<CR>" opts)
-(map "n" "<C-Down>" ":resize +2<CR>" opts)
-(map "n" "<C-Left>" ":vertical resize -2<CR>" opts)
-(map "n" "<C-Right>" ":vertical resize +2<CR>" opts)
+(map :n :<C-Up> ":resize -2<CR>" opts)
+(map :n :<C-Down> ":resize +2<CR>" opts)
+(map :n :<C-Left> ":vertical resize -2<CR>" opts)
+(map :n :<C-Right> ":vertical resize +2<CR>" opts)
;; Navigate buffers
-(map "n" "<S-l>" ":bnext<CR>" opts)
-(map "n" "<S-h>" ":bprevious<CR>" opts)
+(map :n :<S-l> ":bnext<CR>" opts)
+(map :n :<S-h> ":bprevious<CR>" opts)
;; Visual ;;
;; Stay in indent mode
-(map "v" "<" "<gv" opts)
-(map "v" ">" ">gv" opts)
+(map :v "<" :<gv opts)
+(map :v ">" :>gv opts)
;; Visual Block ;;
;; Move text up and down
-(map "x" "J" ":move '>+1<CR>gv-gv" opts)
-(map "x" "K" ":move '<-2<CR>gv-gv" opts)
-(map "x" "<A-j>" ":move '>+1<CR>gv-gv" opts)
-(map "x" "<A-k>" ":move '<-2<CR>gv-gv" opts)
+(map :x :J ":move '>+1<CR>gv-gv" opts)
+(map :x :K ":move '<-2<CR>gv-gv" opts)
+(map :x :<A-j> ":move '>+1<CR>gv-gv" opts)
+(map :x :<A-k> ":move '<-2<CR>gv-gv" opts)
;; Move text up and down
-(map "v" "<A-j>" ":m .+1<CR>==" opts)
-(map "v" "<A-k>" ":m .-2<CR>==" opts)
-(map "v" "p" "\"_dP" opts)
+(map :v :<A-j> ":m .+1<CR>==" opts)
+(map :v :<A-k> ":m .-2<CR>==" opts)
+(map :v :p "\"_dP" opts)
diff --git a/fnl/settings/options.fnl b/fnl/settings/options.fnl
index 4e560ce..f49867e 100644
--- a/fnl/settings/options.fnl
+++ b/fnl/settings/options.fnl
@@ -1,51 +1,80 @@
;; Sets options in neovim
-(module settings.options
- {autoload {nvim aniseed.nvim}})
+(module settings.options {autoload {nvim aniseed.nvim}})
-(def- opts {
- :backup false ;; creates a backup file
- :clipboard "unnamedplus" ;; allows neovim to access the system clipboard
- :cmdheight 2 ;; more space in the neovim command line for displaying messages
- :completeopt { "menuone" "noselect" } ;; mostly just for cmp
- :conceallevel 0 ;; so that `` is visible in markdown files
- :fileencoding "utf-8" ;; the encoding written to a file
- :hlsearch true ;; highlight all matches on previous search pattern
- :ignorecase true ;; ignore case in search patterns
- :mouse "" ;; disable the mouse to be used in neovim
- :pumheight 10 ;; pop up menu height
- :showmode false ;; we don't need to see things like ;; INSERT ;; anymore
- :showtabline 2 ;; always show tabs
- :smartcase true ;; smart case
- :smartindent true ;; make indenting smarter again
- :splitbelow true ;; force all horizontal splits to go below current window
- :splitright true ;; force all vertical splits to go to the right of current window
- :swapfile false ;; creates a swapfile
- :termguicolors true ;; set term gui colors (most terminals support this)
- :timeoutlen 1000 ;; time to wait for a mapped sequence to complete (in milliseconds)
- :undofile true ;; enable persistent undo
- :updatetime 300 ;; faster completion (4000ms default)
- :writebackup false ;; if a file is being edited by another program (or was written to file while editing with another program), it is not allowed to be edited
- :expandtab true ;; convert tabs to spaces
- :shiftwidth 2 ;; the number of spaces inserted for each indentation
- :tabstop 2 ;; insert 2 spaces for a tab
- :cursorline true ;; highlight the current line
- :number true ;; set numbered lines
- :relativenumber true ;; set relative numbered lines
- :numberwidth 4 ;; set number column width to 2 {default 4}
- :signcolumn "yes" ;; always show the sign column, otherwise it would shift the text each time
- :wrap false ;; display lines as one long line
- :scrolloff 8 ;; is one of my fav
- :sidescrolloff 8
- :guifont "monospace:h17" ;; the font used in graphical neovim applications
- }
-)
+(def- opts {:backup false
+ ;; creates a backup file
+ :clipboard :unnamedplus
+ ;; allows neovim to access the system clipboard
+ :cmdheight 2
+ ;; more space in the neovim command line for displaying messages
+ :completeopt {:menuone :noselect}
+ ;; mostly just for cmp
+ :conceallevel 0
+ ;; so that `` is visible in markdown files
+ :fileencoding :utf-8
+ ;; the encoding written to a file
+ :hlsearch true
+ ;; highlight all matches on previous search pattern
+ :ignorecase true
+ ;; ignore case in search patterns
+ :mouse ""
+ ;; disable the mouse to be used in neovim
+ :pumheight 10
+ ;; pop up menu height
+ :showmode false
+ ;; we don't need to see things like ;; INSERT ;; anymore
+ :showtabline 2
+ ;; always show tabs
+ :smartcase true
+ ;; smart case
+ :smartindent true
+ ;; make indenting smarter again
+ :splitbelow true
+ ;; force all horizontal splits to go below current window
+ :splitright true
+ ;; force all vertical splits to go to the right of current window
+ :swapfile false
+ ;; creates a swapfile
+ :termguicolors true
+ ;; set term gui colors (most terminals support this)
+ :timeoutlen 1000
+ ;; time to wait for a mapped sequence to complete (in milliseconds)
+ :undofile true
+ ;; enable persistent undo
+ :updatetime 300
+ ;; faster completion (4000ms default)
+ :writebackup false
+ ;; if a file is being edited by another program (or was written to file while editing with another program), it is not allowed to be edited
+ :expandtab true
+ ;; convert tabs to spaces
+ :shiftwidth 2
+ ;; the number of spaces inserted for each indentation
+ :tabstop 2
+ ;; insert 2 spaces for a tab
+ :cursorline true
+ ;; highlight the current line
+ :number true
+ ;; set numbered lines
+ :relativenumber true
+ ;; set relative numbered lines
+ :numberwidth 4
+ ;; set number column width to 2 {default 4}
+ :signcolumn :yes
+ ;; always show the sign column, otherwise it would shift the text each time
+ :wrap false
+ ;; display lines as one long line
+ :scrolloff 8
+ ;; is one of my fav
+ :sidescrolloff 8
+ :guifont "monospace:h17"
+ ;; the font used in graphical neovim applications
+ })
-(defn- apply-opts []
- (each [k v (pairs opts)]
- (tset vim.opt k v)))
+(defn- apply-opts [] (each [k v (pairs opts)]
+ (tset vim.opt k v)))
(apply-opts)
(vim.cmd "set whichwrap+=<,>,[,],h,l")
(vim.cmd "set iskeyword+=-")
(vim.cmd "set formatoptions-=cro")
-(nvim.ex.set "shortmess+=c")
+(nvim.ex.set :shortmess+=c)
diff --git a/fnl/util.fnl b/fnl/util.fnl
index 18345ad..e6b4d9f 100644
--- a/fnl/util.fnl
+++ b/fnl/util.fnl
@@ -1,12 +1,11 @@
;; Utility functions.
-(module util
- {autoload {nvim aniseed.nvim}})
+(module util {autoload {nvim aniseed.nvim}})
-(defn autocmd [name opts]
- (nvim.ex.create_autocmd name opts))
+(defn autocmd [name opts] (nvim.ex.create_autocmd name opts))
(defn load-plugin [name]
- (let [(ok? val-or-err) (pcall require name)]
- (if ok?
- val-or-err
- (vim.notify (.. "Could not load config: " val-or-err) vim.log.levels.WARN))))
+ (let [(ok? val-or-err) (pcall require name)]
+ (if ok?
+ val-or-err
+ (vim.notify (.. "Could not load config: " val-or-err)
+ vim.log.levels.WARN))))