Use ag, ack, grep and git grep directly from Sublime Text 2 and 3
Python
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
searchengines Add ripgrep support Oct 31, 2016
.no-sublime-package
CHANGELOG.md Add new option to go straight to the list view Nov 7, 2017
Default (Linux).sublime-keymap add method to clear gutter markup Jan 8, 2017
Default (OSX).sublime-keymap add method to clear gutter markup Jan 8, 2017
Default (Windows).sublime-keymap add method to clear gutter markup Jan 8, 2017
Default.sublime-commands add next/prev result navigation Jan 8, 2017
Main.sublime-menu fixed references to menu items Feb 3, 2014
README.md kofi button May 2, 2018
SearchInProject (Windows).sublime-settings Whitespace cleanup Dec 1, 2012
SearchInProject.sublime-settings Add new option to go straight to the list view Nov 7, 2017
install.txt UI and readme improvements Aug 7, 2015
messages.json
search_in_project.py refactoring May 2, 2018

README.md

Search In Project

Buy Me a Coffee at ko-fi.com

Search in Project screencast

This plugin for Sublime Text 2 and 3 lets you use your favorite search tool (grep, ack, ag, pt, rg, git grep, or findstr) to find strings aross your entire current Sublime Text project.

It opens a quick selection panel to browse results, and highlights matches inside files.

Usage

  • Use the key binding (⌘⌥⇧F on OS X, Ctrl+Alt+Shift+F on Windows and Linux), or
  • Call the "SearchInProject: Search" command;
  • Enter the search query;
  • Hit Enter (Return). You'll be presented with a "quick select" panel with the search results. Select any file from that panel (it supports fuzzy searching) to go to the match. The search string will be highlighted with an outline and a circle symbol in the gutter area.
  • The last item on the quick select panel is "List results in view". Pick it to see results in a regular editor view. (Tip: if you enter three ticks ("`") in the search box - it's going to be to be the first item.)

If you select text and run Search In Project, the program will pre-fill the search string with the selection text. For an example, to search for a word project-wide, press the following buttons: ⌘D, ⌘⌥⇧F, ↩.

If you run Search In Project again, the program will remember the last search string, so the next search will be an ↩ away.

Important note for Windows users: the current release has known issues with running executables, and I would appreciate any bug reports from the field.

Installation

Package Control: install package Search in Project (this is the recommended method)

Manual installation: download an archive of the repository, and unzip into the Sublime Text Packages folder.

Installing search engines

My idea is that if you use this plugin it's because you already use one of the superior search engines like The Silver Searcher and want to use it from within Sublime Text.

The supported search engines are:

Name Description Search in Project key
pt (The Platinum Searcher) fast, has binaries for every platform, recommended. the_platinum_searcher
ag (The Silver Searcher) equally fast, only 3rd party binaries for Windows, also recommended the_silver_searcher
ack not as fast as pt and ag, but still pretty good. Depends on perl, thus not so easy to install on Windows. ack
git grep packaged with Git and really fast, but only works in Git repositories. Recommended if you use Windows and Git and really don't want to install anything else. git_grep
grep fallback search tool available on Linux and OSX systems. Not recommended - just use the built-in Sublime Text search instead. grep
findstr fallback search tool available on Windows. Not recommended - just use the built-in Sublime Text search instead. find_str

You need to choose the engine that you want to use in the configuration file. The default is the one that available on every system, but it is easily the worst.

Configuration

Configuration is stored in a separate, user-specific SearchInProject.sublime-settings file. See the default file for configuration options; links to both could be found in the main menu in Preferences -> Package Settings -> Search In Project.

Issues with locating executables

If Search In Project has problems with locating executables in Mac, install the Fix Mac Path plugin.

You can always configure the full path to any search engine in the settings, as a catch-all solution.


Made by Leonid Shevtsov