Enable some kind of git type ignore file

Have a suggestion for "Everything"? Please post it here.
Coasting3122
Posts: 4
Joined: Fri Jan 12, 2024 5:26 pm

Enable some kind of git type ignore file

Post by Coasting3122 »

Hi,

I see a lot of questions and comments regarding include/exclude methods of files and folders where it seems like a .git style .ignore (https://git-scm.com/docs/gitignore#_pattern_format) file would simplify things. I have several various other programs that use this method and it's nice to have for ease and consistency. I've had a few times where I exclude files and/or directories with sensitive files (secrets, keys, etc.) and then forget that new file/folder patterns aren't excluded, and then it gets unintentionally included in search (I do realize I'm the problem here lol).

Many of my other apps will see a .ignore file with "*" inside and just know to ignore everything in that directory and subdirectories unless otherwise specified. It easy to maintain, and prevents mistakes. Anyway, I think that would be a cool enhancement. Thanks for the awesome software!
void
Developer
Posts: 19901
Joined: Fri Oct 16, 2009 11:31 pm

Re: Enable some kind of git type ignore file

Post by void »

Everything 1.5 will have an ancestor-sibling: and sibling: search functions.

For example:

Code: Select all

!whole:ancestor-sibling:.gitignore !whole:sibling:.gitignore !whole:.gitignore
This will hide files/folders where an ancestor has a sibling with a filename that matches .gitignore or where the sibling of a file/folder has a filename that matches .gitignore.
ancestor-sibling: is an expensive search, so please consider adding it as a filter under Search -> Add to filters...

Thank you for the suggestion.

ancestor-sibling:
sibling:

1404a currently has a bug with ancestorsibling: not matching folders -it will be fixed in the next update.
ancestor-child:.gitignore is on my TODO list.
Coasting3122
Posts: 4
Joined: Fri Jan 12, 2024 5:26 pm

Re: Enable some kind of git type ignore file

Post by Coasting3122 »

cool. I didn't know about ancestor-sibling. I think I may not have been clear about what I was asking (unless I am misunderstanding how ancestor-sibling works). I'm not looking to exclude/filter certain files/folders from search, I want them NOT included in the database at all.

c:\Parent folder
...c:\Parent folder\Child1
...c:\Parent folder\Child2-Secret
...c:\Parent folder\Child3

c:\parent folder\ is being indexed, but I don't want c:\parent folder\Child2-Secret indexed.
I know I can add c:\parent folder\Child2-Secret to Index>Exclude (which is what I do now), but later I create c:\parent folder\Child4-evenmoresecret, but forget to add to excludes and my secrets in that folder are now indexed.
When I create a folder that I know will have keys,certs,etc. part of my normal process is to create a .ignore files with * (to exclude all)... which keeps it from being process by other programs entirely.
My suggestion was for Everything to ignore and not ingest any folders/files that are specified in a .ignore file. So basically when Everything scans c:\parent folder\ and subdirs it will see c:\parent folder\Child4-evenmoresecret\.ignore and that is has * (meaning ALL files and dirs), it will treat that as if it were part of Everythings Index>Exclude list.
void
Developer
Posts: 19901
Joined: Fri Oct 16, 2009 11:31 pm

Re: Enable some kind of git type ignore file

Post by void »

An .ignore (.everything.ignore ?) file is a good idea.

I will consider such an option for a future release of Everything.

Thank you for the suggestion.



For now, please consider making the folder hidden and excluding hidden files/folders under Tools -> Options -> Exclude.