elihunter173 / dirbuf.nvim

A file manager for Neovim which lets you edit your filesystem like you edit text
GNU Affero General Public License v3.0
423 stars 7 forks source link
file-manager lua neovim neovim-plugin

dirbuf.nvim

A directory buffer for Neovim that lets you edit your filesystem like you edit text. Inspired by vim-dirvish and vidir.

Features

https://user-images.githubusercontent.com/42009212/162110083-9fd3701f-8ffb-4cf7-9333-d57020a9242e.mp4

Installation

Requires Neovim 0.6 or higher.

Notes

If you use nvim-tree.lua, you must disable the :help nvim-tree.update_to_buf_dir option. Otherwise, Dirbuf will fail to open directory buffers.

require("nvim-tree").setup {
    update_to_buf_dir = { enable = false }
}

Usage

Run the command :Dirbuf to open a directory buffer. Press - in any buffer to open a directory buffer for its parent. Editing a directory will also open up a directory buffer, overriding Netrw.

Inside a directory buffer, there are the following keybindings:

See :help dirbuf.txt for more info.

Configuration

Configuration is not necessary for Dirbuf to work. But for those that want to override the default config, the following options are available with their default values listed.

require("dirbuf").setup {
    hash_padding = 2,
    show_hidden = true,
    sort_order = "default",
    write_cmd = "DirbufSync",
}

Read the documentation for more information (:help dirbuf-options).

Development

A Justfile is provided to test and lint the project.

# Run unit tests
$ just test
# Run luacheck
$ just lint

just test will automatically download plenary.nvim's test harness and run the *_spec.lua tests in tests/.