Skip to content

FEATURE: non-git ignore files #1535

@CosmicToast

Description

@CosmicToast

Did you check the docs?

  • I have read all the docs.

Is your feature request related to a problem? Please describe.

While it's nice to have gitignore support, there's no support for gitignore-style ignore files, which are present in the wild.
These range from .ignore, to .fdignore, .rgignore and so on.

Describe the solution you'd like.

I would like neotree to automatically ignore patterns specified in .neotreeignore and .ignore, as it does for .gitignore.
I'd also like the list of ignore filenames to be configurable, i.e. the default is {'.neotreeignore', '.ignore'}, but the default can be changed.

Describe alternatives you've considered.

The current expected way to handle this are global ignore rules and (to a lesser extent) nesting rules.
These are not per-directory, and therefore don't offer the same type of flexibility.

Furthermore, most of my use-cases outside of gitignore are indeed outside of git directories.
Since the neotree support depends on git check-ignore, it does not work outside of git repositories.

Additional Context

As an example, I ported my neovim config to fennel using nfnl. As such, I'd like to ignore .lua files in my neovim config dir.
However, I cannot do this in a satisfactory and cross-platform way. With this feature I would simply have a .ignore containing *.lua in the root of the config dir.
If I needed to have some lua file not get ignored, I could add a ! pattern for that file.

I did a quick look and I didn't find any properly compliant gitignore implementations in lua, so I'll probably write one shortly.
Once it's ready I'll mention it in this issue, but if you have alternative ideas do let me know :)

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions