Skip to content
cseickel edited this page Jan 3, 2022 · 49 revisions

Welcome to the neo-tree.nvim wiki!

This is a place to share configuration recipes for functionality that others may want to copy or learn from.

Commands

Open and Clear Search

Sometimes you may want to add a filter and leave that way because the filter captures the files you want to work on now. Other times you may just be using the filter as a quick way to find a file you want to open. In the latter case, you may want to clear the search when you open that file. This custom command offers that choice:

      require("neo-tree").setup({
        popup_border_style = "NC",
        filesystem = {
          window = {
            mappings = {
              ["o"] = "open_and_clear_filter"
            },
          },
          commands = {
            open_and_clear_filter = function (state)
              local node = state.tree:get_node()
              if node and node.type == "file" then
                local file_path = node:get_id()
                -- reuse built-in commands to open and clear filter
                local cmds = require("neo-tree.sources.filesystem.commands")
                cmds.open(state)
                cmds.clear_filter(state)
                -- reveal the selected file without focusing the tree
                require("neo-tree.sources.filesystem").navigate(state.path, file_path)
              end
            end,
          }
        }
      })
Clone this wiki locally