Skip to content

Latest commit

Β 

History

78 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Icon of Find Again!, a Visual Studio Code extension

Find Again!


πŸ”Ž Find Again! is a Visual Studio Code extension that lets you save and reuse your workspace's search queries. Whether you're tracking bugs, reviewing code, or running recurring tasks, you'll never lose a critical search again. You can share search configs between projects or with other devs! ⏳


πŸ“ƒ Table of Contents


πŸ€– Features

πŸ” Search Preset System

Users define custom searches inside a search.faq file, a centralized search index where each search entry supports include/exclude globs, queries, and description metadata.

⚑ Instant Access

Seamless Command Palette and shortcut integration with cached pick items for blazing-fast access.

🧠 Smart Caching Mechanism

The search.faq-based index is read once and cached at all times, minimizing runtime computation and reload lag.

πŸ’Ύ File Watcher Support

Automatically detects create/change/delete events for search.faq and re-indexes the search set.

πŸ› οΈ Debounced Index Reload with Zep

Uses Zep for throttled, graceful search refresh – prevents excessive filesystem calls.

🟑 StatusBar Feedback

Displays real-time indexing status, search availability, and errors/warnings using iconography and tooltips.

πŸ“„ Fallback Support with Creation Prompt

If the search.faq is missing, prompts the user to auto-generate a starter config with sample data.

🚫 Graceful Error Handling

Detects malformed search.faq file and offers to open it for inspection without crashing or blocking the flow.

✍🏻 Editable JSON File Format

Search definitions are human-readable, easy to version-control, and ideal for collaborative logic crafting.

πŸ«±πŸΌβ€πŸ«²πŸΌ Perfect for Sharing

The search.faq search-index file is perfectly sharable between projects, even between developers!


πŸ•΅πŸΌ Usage

After installing the extension, open a folder and launch Find Again! via:

  • the Command Palette: Find Again!: Run a Search,
  • the keyboard shortcut:
    • CTRL + ALT + F (Windows, Linux)
    • Command + Option + F (macOS).

The extension expects a searches index – search.faq located in the current workspace's configuration folder .vscode. The searches index is a JSON file with custom properties. If one doesn't exist, an option to create one is presented. See Examples below for more information.



Figure 1. Find Again! – regular search


Figure 2. Find Again! – regex search


Figure 3. Find Again! – Command Palette

πŸ—’οΈ Example

Here's an example of how a search.faq file looks like:

{
    "searches": {
        "My TS Search": {
            "query": "Exists",
            "include": "./src/*.ts",
            "caseSensitive": true,
            "description": "Search TypeScript source files"
        },
        "My Docs Search": {
            "query": "#{1,6}",
            "include": "./*.md",
            "caseSensitive": false,
            "regex": true,
            "description": "Find all Headers in Docs"
        }
    }
}

πŸ“ Changelog

πŸ“‘ The changelog is available here: CHANGELOG.md.


πŸ’– Support

I work hard for every project, including this one and your support means a lot to me!
Consider buying me a coffee. β˜•

Donate to igorskyflyer

Thank you for supporting my efforts! πŸ™πŸ˜Š

πŸͺͺ License

Licensed under the GPLv3 license.


🧬 Related

@igor.dvlpr/aria

🧬 Meet Aria, an efficient Adblock filter list compiler, with many features that make your maintenance of Adblock filter lists a breeze! πŸ¦–


@igor.dvlpr/keppo

🎑 Parse, manage, compare and output SemVer-compatible version numbers. πŸ›‘


@igor.dvlpr/vscode-folderpicker

✨ Provides a custom Folder Picker API + UI for Visual Studio Code. 🎨


@igor.dvlpr/node-clone-js

🧬 A lightweight JavaScript utility allowing deep copy-by-value of nested objects, arrays and arrays of objects. πŸͺ


@igor.dvlpr/zing

🐌 Zing is a C# style String formatter for JavaScript that empowers Strings with positional arguments - composite formatting. πŸš€


πŸ‘¨πŸ»β€πŸ’» Author

Created by Igor Dimitrijević (@igorskyflyer).

About

πŸ”Ž Find Again! is a Visual Studio Code extension that lets you save and reuse your workspace's search queries. Whether you're tracking bugs, reviewing code, or running recurring tasks, you'll never lose a critical search again. You can share search configs between projects or with other devs! ⏳

Topics

Resources

Contributing

Stars

2 stars

Watchers

0 watching

Forks

Sponsor this project

Used by

Contributors

Languages