The simplest search is just for a word, a phrase like this one, or a code->snippet() (which is just a phrase).
With the Phrase Search option enabled, your query will be treated as a phrase. With Phrase Search turned off, multiple words will be searched for separately, and the results combined.
To search for a phrase with Phrase Search turned off, double-quote it.
Entrian Source Search supports three kinds of wildcards:
wild
, wildcard
, wilderness
.
Asterisks in a single-token wildcard can appear *any*where* in the word.To search for an asterisk, escape it with a backslash: char\*.
Wildcards example: If you wanted to find all your Python functions involving audio
that take a parameter called channel
,
you might search for def *audio*( * channel. That would match def get_audio(self, channel)
and
def flush_audio_buffer(self, buffer, channel)
.
The *audio* piece uses single-token wildcards to match all the single words that contain audio
, and the
lone asterisk in the middle matches any number of tokens on the same line.
These options fine-tune how searches work:
Case sensitive: Check this to make your searches case sensitive.
Phrase Search: Check this to search for phrases by default, so that searching
for all good will find the phrase all good
. With phrase search turned off, that
query will find all instances of the word all
and all instances of the
word good
, and show you the combined results.
You'd normally keep Phrase Searching enabled, but switching it off is useful if you want to search for a set of related function names, for instance. With the Phrase Search button unchecked, you can always double-quote your query to search for a phrase.
Loose Search: You can search for words that are somewhere near to each
other, in any order, by enabling Loose Search. With Loose Search enabled, searching for parse query will
match Query q = parse(text)
.
To save you checking and unchecking the button, you can prefix your query with loose: to enable
Loose Search for a particular query.
Fuzzy Search: By checking the Fuzzy button on the toolbar, you can match
variations on the words (Archive matches CArchive
and Archival
), international
spellings (Color matches Colour
), and spelling mistakes
(Definitely matches Definately
).
Verbosity slider: This controls how much context is displayed around the matching word in each hit. With the verbosity turned right down, you get a narrow column of source code, with the matching words closely aligned above each other - very easy to scan, but lacking much context. With the verbosity turned up, you see more of the code around each matching word, but the list is, well, more verbose, and therefore takes longer to scan your eye down.
Filters affect which files are searched, according to their filenames, ages, etc:
You can filter on the age of files, for instance to pick up only files modified within the past two hours: age:2h. The units are m for minutes, h for hours and d for days.
You can filter on text or phrases by prefixing them with a plus: "find this phrase" +"only in files containing this phrase".
Filters can exclude as well as include, by prefixing them with a minus: -ext:html, -"exclude files containing this phrase".
Be careful of accidental negative filtering - a search for -200 means
"list all the files that don't contain 200
",
which is probably not what you meant (and if you do this, a warning will be displayed). To prevent
a minus-prefixed or plus-prefixed query from being interpreted as a filter, double-quote it.
You can specify a filter like file:*terrain* dir:renderer without a search term, and get a list of the matching files. That's a quick way to open one or more files without having to find them in Solution Explorer, or with the command.
In the Search box, positive filters are shown in green text, negative filters are shown in red text, and multiple search phrases are shown with different colored backgrounds with matching background colors shown in the results list.
Here’s how you might find the places where your Python code uses a list or a dict as the default value for a function parameter,
ignoring anything in the thirdparty
directory:
Entrian Source Search makes Visual Studio faster and more productive to use. and try it for yourself.