quicksilver / quicksilver/Quicksilver

Exclude files by pattern

Open
#3,073 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Objective-C
Stars
2.9k
Forks
291
PR merge metrics
No merged PRs in 30d

Description

I often find that I want to exclude files based on something that logically is a "type", but is not reflected in their type as known to QS—for instance, git repository folders (.git), package-manager modules and language-vm cache directories (.npm, __pycache__, etc), and similar artifacts with strong naming conventions. I'd like a third field added to the File & Folder Scanner, of filename patterns to exclude. If a folder is excluded, don't continue scanning within it either.

The simplest would be just glob matching of the filename, but even better would be to match against the relative path from the folder-scanner root if the pattern contains a slash. This would allow it to cover the use-case of "I want to scan every subfolder of this folder except one", by inputting ./IgnoredSubfolder as a pattern, without potential collateral damage if that name appears deeper in the hierarchy.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the File & Folder Scanner entry point and inspect how scanner configuration, filename or type filters, and recursive directory traversal are represented. Trace the existing scanner tests if present, then define done as supporting filename patterns, relative-path matching for patterns containing a slash, and stopping traversal when a folder matches.

Written by the indexing model from the issue text.

Assessment

Tech stack
objective-c
Domain
desktop
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.