Zettelkasten Forum

Possible Feature Request: Persistent Search

I've been doing a lot more writing in Ulysses lately, and I've been trying to figure out why, in some ways, working in the native files feels "better" than working with the md files of my ZK. I have complicated thoughts, but I've realized a big part of it is that there is a hierarchy available there which is not available in The Archive. This enables a sort of implicit filtering, I can look at just documents related to a project, do searches, etc, within that.

I recognize that this lack of hierarchy is in a lot of ways the strength of a Zettelkasten. But sometimes, it is useful to work within a narrower scope.

Thus, I propose Persistent Searches. They would work much like saved searches currently do, but would not be cleared by default when searching additionally.

By way of example: I'm currently working on a project codenamed RoL. I have all of my files related to that tagged with #RoL, and I can find them easily. But when I try to do searches within that, I have to type that tag every time I do a search, and it's a lot of cognitive overhead. What I would love is some way of "locking" an arbitrary search, so that until I explicitly clear it, all other searches take place with the locked search implicitly enabled.

I'm not certain the best UI for this. My initial thought would be to have a sort of "breadcrumbs" area that would appear beneath the search bar, with locked searches there, so you would always be reminded that you had narrowed your scope.

What do you all think?


  • Thanks for the detailed request!

    Sascha and I have been talking about this from time to time. Saved Searches in the beginning behaved in a similar, locking way.

    Search fields usually have so-called "tokens" for this. Once tokenized, a term can be deleted with a single key press; documentation browser Dash does this beautifully to lock into a documentation set and search within it:

    So this idea is on our radar, but we haven't decided what to do with it.

    Author at Zettelkasten.de • https://christiantietze.de/

  • I use my structure notes for that. For a project, I'd have one, create Zettel from there (via Wikilink) and use the historyfunction to go back to the structure note or the collection of the structure notes.

    But I think to lock in a filter is something useful. The saved searches were initially designed that way.

    EDIT: Oh, Christian already said that.

  • I, too, would love to have a way to filter my notes in a (semi-) persistent way, especially for filtering by tags (e.g., filtering by "#work" when I'm at work). It would only be useful to me, though, if it didn't work like saved searches currently do (i.e., by inserting text into the normal search box, which interferes with title matches).

    I basically never use saved searches, because they prevent me from rapidly switching between notes via (partial) title match (e.g., typing "reg" to open my "Regular Expressions Cheat Sheet" note, etc.). Switching notes via title match probably makes up 70-80% or so of my note switches.

    So, in a perfect world, persistent searches (or sticky filters?):

    • would not interfere with title matches
    • would replace saved searches and work as toggles (e.g., hit ⌥⌘1 to add filter phrase X; hit ⌥⌘1 again to remove filter phrase X)
    • could also be invoked impromptu, meaning you could type a filter phrase Y and then hit ⌘Return or so to set it as a (semi-) persistent filter phrase
    • have another keyboard shortcut to remove all filter phrases
    • would always show the particular filter phrase (or phrases) that is currently active

    If you like The Archive's "PrettyFunctional (Basic)" theme, consider upgrading to the "PrettyFunctional (Regular)" theme.

  • I second with @mediapathic 's request and @ctietze 's referenced solution.

  • I completely agree with @mediapathic. In my opinion, this is the single most important missing feature. I actually posted a similar feature request awhile back: https://forum.zettelkasten.de/discussion/649/feature-request-toggling#latest

Sign In or Register to comment.