45 lines
2.0 KiB
Fennel
45 lines
2.0 KiB
Fennel
(import-macros {: g! : exec : map! : augroup!} :hibiscus.vim)
|
|
(import-macros {: setup} :macros)
|
|
|
|
(g! :neo_tree_remove_legacy_commands 1)
|
|
|
|
(setup :neo-tree {
|
|
:close_if_last_window true
|
|
:window {:width 30
|
|
:mappings {:<cr> "open_with_window_picker"
|
|
:S "split_with_window_picker"
|
|
:s "vsplit_with_window_picker"}}
|
|
:filesystem {:filtered_items {:visible true}
|
|
:follow_current_file true
|
|
:window {:mappings {:/ "noop"
|
|
:g/ "fuzzy_finder"
|
|
:f "noop"
|
|
:ff (fn [] (exec [[:Telescope "find_files"]]))
|
|
:fg (fn [] (exec [[:Telescope "live_grep"]]))
|
|
:<S-Right> (fn [])
|
|
:<S-Left> (fn [])}}}
|
|
:renderers {:directory [[:indent]
|
|
[:icon]
|
|
[:current_filter]
|
|
[:name]
|
|
[:clipboard]
|
|
{1 "diagnostics" :errors_only true}]
|
|
:file [[:indent]
|
|
[:icon]
|
|
{1 "name" :use_git_status_colors true :zindex 10}
|
|
[:clipboard]
|
|
[:bufnr]
|
|
[:modified]
|
|
[:diagnostics]
|
|
[:git_status]]}})
|
|
|
|
(map! [n] :f ":Neotree focus<CR>")
|
|
(map! [n] :F (fn [] (exec [[:Neotree "toggle"] [:Neotree "toggle" "action=show"]])))
|
|
|
|
(augroup! :neo-tree [[FileType] [qf] "set nobuflisted|call feedkeys(\"F\")"])
|
|
|
|
; Startup
|
|
(if (or (= (vim.fn.expand "%") "") (not= (vim.fn.isdirectory (vim.fn.expand "%")) 0))
|
|
((. (require :neo-tree.command) :_command) (vim.fn.getcwd))
|
|
((. (require :neo-tree.command) :_command) "show" (vim.fn.getcwd)))
|