Skip to content
Alexander Courtis edited this page Nov 13, 2022 · 19 revisions

Getting Started

Fork this repo and take a look at CONTRIBUTING.md.

Clean Room

It is strongly advised to develop in a "clean room" using the minimal configuration, so that your plugins and other customisations don't interfere with nvim-tree.

See bug report for some background on the minimal configuration.

cp .github/ISSUE_TEMPLATE/nvt-min.lua /tmp

Change

      "nvim-tree/nvim-tree.lua",

to your fork e.g.

      "~/src/nvim-tree.lua.myfork",

Run with

nvim -nu /tmp/nvt-min.lua

Debug Logging

Using print can be a little problematic when there are many messages.

See :help nvim-tree.log

Enable dev type:

    log = {
      enable = true,
      truncate = true,
      types = {
        all = false,
        config = false,
        copy_paste = false,
        dev = true,
        diagnostics = false,
        git = false,
        profile = false,
        watcher = false,
      },
    },

Require the logger:

local log = require "nvim-tree.log"

Add string.format style log lines e.g.:

log.line("dev", "do_copy uid %d '%s' -> '%s'", source_stats.uid, source, destination)

Watch:

tail -F ~/.cache/nvim/nvim-tree.log
Clone this wiki locally