Search Syntax Documentation

Super cool, thank you so much!

Combined with the embedded search plugin, your contribution to Joplin really has made a difference! Thanks!

Coming back again to my issue, I wonder if it was also possible to disable the search in all subnotebooks, e.g. by introducing a flag like search_recursive: False.

1 Like

How can I search for ->? When I search for body:"->" it doesn't return pages containing the phrase, although I know for sure that I have plenty of them. It instead returns some random pages.

From the documentation

One drawback of Full Text Search is that it ignores most non-alphabetical characters.

Use this search query: /"->"

1 Like

I totally agree. Searching for completed / incompleted checkboxes in combination with notebooks (other search combinations too) would be a great feature. In my use case it would improve significantly the implementation of David Allens "Getting Things Done" (GTD) with Joplin. Is there any news about that feature? Thank you in advance :slight_smile:

Hi !

I did note that the standard behavior does not include searching for chunks of text in words but I would need to do that. Is there a way to get around it?

Example: searching for "Ă©quipe" will return "rĂ©union d’équipe" "Ă©quipage" "Ă©quipement"...

Try Ă©quipe*

Don’t works

I think we strip off the accents when indexing the content, so equip* might work.

In that case maybe it's worth stripping them from search query too?

equip* or Ă©quip* does not work...

By default all the search terms will be connected by and in the backend ( notebook is the only exception). Use the any operator if you want the search terms connected by or instead.

Multiple notebooks can also be specified since they are connected by or always (ignoring the any operator).

notebook and any seems pretty weird in general. Maybe a note to not combine the two would be helpful.

I ran the tests below with with 1.8.5 on Windows.

notebook:nb1 notebook:nb2 returns the expected notes of nb1 or nb2.

any:1 notebook:nb1 notebook:nb2 returns nothing. The any:1 should be redundant, and I expected the same result as the above.

notebook:nb1 tag:tag1 returns notes in nb1 and has the tag tag1; ie, this is an and search. "notebook is the only exception" led me to think searches involving notebook defaults to an or search. I expected notes in nb1, or has the tag tag1 irrespective of its location.

any:1 notebook:nb1 tag:tag1 returns the same results; ie, this is an and search. I expected the any:1 to be an explicit request to perform an or search, and return notes in the notebook nb1, or has the tag tag1 irrespective of location.

any:0 notebook:nb1 tag:tag1 returns nothing. This should be an explicit request to perform an and search. I expected notes in nb1 with the tag tag1.

any:1 notebook:nb1 and any:0 notebook:nb1 both return nothing. I expected the any: to be superfluous return the notes in nb1

1 Like

how can I negate that? I want all notes with "#" but w/o "@".
"# -/@" doesn't work

Having a search function like Anki would be really cool.

In Anki: The Shift-Key is the AND-operator. If you click on a tag and on a notebook (=card-deck in anki) it searches for the tag AND the card-deck. If you hold Ctrl.-Key it behaves as a OR-operator. If you hold the Alt-Key and click on a tag, the search is negated.

So clicking on tag:animal and after it on deck:zoology with Ctrl.+Alt and after it on deck:cars will create the search string, which is displayed as:
"tag:animal" AND -"deck:zoology" OR "deck:cars"

So you don't need to memorize the name of the search-commands and you can seach more quicker by just pressing keys and click on notebooks/tags.

Regarding the search for unchecked boxes, would it make sense to have notes searchable by the iscompleted flag like todo? That is, if there are any unchecked boxes, iscompleted:0 would find those notes.

I also have used the simple search workaround but would like to limit it to certain notebooks (and subnotebooks).

Is there any possibility to search for completed To-do notes based on the completion date?

It would be nice to have an operator that works similar to created: and updated:, for example comleted:day-0, completed:YYYYMMDD, etc

No you can only search for the due date, not for the completed date.

Thanks for testing this. I'll look into it.

Any news on?:

I would still be happy with at least something that lets me search open todos e.g. within a notebook

Thanks again naviji for your effort.

Is there a way to limit the search to specific subnotebooks?

I've a structure like Projects/Foo and Projects/Bar and I would like to do a search that shows only Projects/Bar but I can't figure out the syntax to do that.

1 Like