ctrl+shift+p filters: :st2 :st3 :win :osx :linux
Browse

Search in Project

by leonid-shevtsov ST2/ST3

Use ag, ack, grep and git grep directly from Sublime Text 2 and 3

Labels search

Details

Installs

  • Total 11K
  • Win 4K
  • OS X 5K
  • Linux 2K
Jan 23 Jan 22 Jan 21 Jan 20 Jan 19 Jan 18 Jan 17 Jan 16 Jan 15 Jan 14 Jan 13 Jan 12 Jan 11 Jan 10 Jan 9 Jan 8 Jan 7 Jan 6 Jan 5 Jan 4 Jan 3 Jan 2 Jan 1 Dec 31 Dec 30 Dec 29 Dec 28 Dec 27 Dec 26 Dec 25 Dec 24 Dec 23 Dec 22 Dec 21 Dec 20 Dec 19 Dec 18 Dec 17 Dec 16 Dec 15 Dec 14 Dec 13 Dec 12 Dec 11 Dec 10 Dec 9
Windows 3 4 1 1 2 3 6 6 4 1 1 0 4 3 3 4 0 1 4 5 3 1 1 0 1 2 1 1 2 1 0 0 2 4 2 2 4 1 1 1 4 5 3 2 1 2
OS X 0 4 1 2 9 2 6 2 1 2 4 2 1 0 2 4 1 0 0 1 5 1 0 0 0 0 0 2 1 1 1 2 1 2 1 2 3 1 0 4 2 1 3 1 0 2
Linux 1 1 2 3 3 0 2 1 1 1 0 2 1 2 3 0 0 1 3 2 1 1 0 1 1 1 0 1 0 0 0 1 0 0 1 1 2 1 0 1 1 1 4 3 0 1

Readme

Source
raw.​githubusercontent.​com

Search In Project

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 “Search in Project” 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 then run Search In Project, it will pre-fill the search string with the selection text; for example, to search for a word project-wide, do ⌘D, ⌘⌥⇧F, ↩

If you run Search In Project again, it will remember the last search string, so the next search is just an away.

Important note for Windows users: the current release has known issues with running executables, I'd 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 you want to use in the configuration file. The default is the one available on every system, but 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