Search
Search is a powerful feature, and has the potential to be confusing. In most cases, if you just type what you want to find, it will work. But search has many capabilities for narrowing down to find exactly what you want.
Complex searches#
When crafting a search query, remember that clicking "Explain Search Term" will give an explanation of what is being searched for, which can be very useful when debugging a complicated search.
- Words in the search query separated by space will be searched independently in each note. For example
foo bar
will find a note that includes bothfoo
andbar
anywhere in it. "Quoted strings"
can be used to search multiple consecutive words separated by space, or in other words, a phrase. So, searching for"foo bar"
with quotes will only find notes that include those words next to each other. You can use backslash\"
to escape double quotes if you actually want to search for a string that includes quotes. And\\
will do the same for backslash.- Boolean operations can be used. Use
OR
to match one or another. Use-
to negate a query. The space character is used for boolean "and".- For example:
foo OR bar
will find all notes that contain either of those words, they don't have to be in the same note.foo -bar
will find all notes that containfoo
, but not if they also containbar
.
- For example:
- Parenthesis can be used to group boolean operations. For example
(a OR b) (c OR d)
. This can be useful when crafting complex searches to make sure things happen in the order you want. - Regular expressions (regex) can now be used in search. Use forward slash to denote a regular expression. For example:
/[a-z]{3}/
. - Several special operators are available. Some operators allow nesting queries using parenthesis, for example:
file:("to be" OR -"2B")
.file:
will perform the following subquery on the file name. For example:file:".jpg"
. If you use Zettelkasten-style UIDs, this can be useful for narrowing a time range, for examplefile:"202007"
for files created in July of 2020.path:
will perform the following subquery on the file path, absolute from the root. For example:file:"Daily Notes/2020-07"
.match-case:
andignore-case:
will override the case sensitive match logic for the following subquery.
Search Settings#
There are a couple of toggles available while searching:
Collapse results
will toggle between just showing matching note names and showing the lines in which matches appear. These extended results can be toggled for each note by clicking on the folding triangle next to the file name.Match case
toggle case sensitive matching, but note that it can be overridden on a per-search basis using thematch-case:
andignore-case:
operators explained above.Explain search term
will show you what the search query actually does in plain terms.