I've been using Joplin for a year and love it, but the full-text search experience was very lacking. The primary search option just focuses an input above the notes list, and typing in search text only gives you a filtered list of note titles (which I think don't even match what notebook you're search in). It also doesn't show you any of the search results from any of the matching notes.
I did later find out that the Quick Commands dialog (CTRL-P) has its own entirely separate full-text search implementation. It shows a list of notes with highlighted matching text snippets. However, it doesn't break out each hit separately, and it limits how many notes it shows in the results list.
I wanted a search experience that matched how the VS Code editor's full text search works: a separate panel in the UI, with a treeview list of hits grouped by file, all of the file groups are collapsible, and each hit is a separate line in the results list.
There was some discussion as I developed this over in the Search functionality in Joplin thread , along with some feature requests. I haven't had time to work on any of those yet, but please feel free to comment here or file issues in the repo!
Hiya, folks. Wanted to let you know that I just published v0.2.1 of the plugin. Updates:
The search input should now auto-focus as soon as you show the panel
Note result list items now prefix the folder name, like "Folder Name > Note Name"
Added "Expand/Collapse All" buttons to toggle all notes in the list
Added sorting dropdowns, which let you sort by: "Relevance" (default search result order), "Folder Name", "Note Name", "Matches", and "Updated"
Also spent some time trying to figure out how to get Joplin to auto-scroll to a selected line when you click on a search result. Had some partial success, but it's really tricky due to how Joplin handles its editors, as well as the Markdown parsing involved. So, don't have it sufficiently working to include yet.
Still, hopefully the collapsing and sorting options are a useful improvement!
Thank you for working on this! Search results by updated or creation date is one of the only missing things for me in Joplin (and remarkable in its absence!)
I am able to use the plugin just fine for limiting searches to title only, but when I try to search and not limit to title, it sits there for a few seconds and then the pane goes completely blank and requires me to either restart the application or select "change application layout" then immediately return.
I do have over 11,000 notes, so maybe my database (>2GB) is just too large to efficiently search with a plugin?
In any event, just being able to search note titles like this is a step forward!
@NorcalScott yeah, the plugin is being pretty simplistic about data fetching atm. It is fetching all results, even though the API is technically separating those into multiple "pages", and then shoving all of them over to the plugin UI layer. Given that, I'm not surprised that it's running into some kind of memory limits or similar.
Given my day job and other responsibilities, afraid trying to optimize that won't be on my priority list any time soon. But, I'm very open to PRs if anyone wants to try contributing improvements.
(Actually, now that I say that... I do have some reason to want to try out some kind of paginated data fetching logic at some point, and this might actually be a useful real-world test case to try building...)
@acemarke thank you for the reply! I do appreciate your work on this plugin and it has already come in handy for me in a few instances. I would say that 60% or more of my searches can be satisfied with terms in the title as I try to title my notes as clearly as possible.
Since my high number of notes and resources is probably more of a corner case, I would be happy to test anything you want me to in the future with my database.