DevonThink to Go SEARCH with beginning Wildcards/Tilde Support

Hopefully not get it wrong,
DEVONthink on Mac is fabulous and for my Archiving needs much better then anything else i can use on OSX itself or from another Application, but for iOS i have a huge problem with the search.
Maybe it´s solvable with a great trick from Eric.

Please add Support for searching with Wildcards on the beginning of Words and the Tilde search

i really use devonthink often and on my mobile version i experienced sadly a few basic drawbacks that i wanna describe here:

The Users not know every time the beginning of the Words, or can think of all combinations of that
Words like :

#rollercoasters amusement park
https://twitter.com/hashtag/rollercoasters?lang=en

will superbly hidden by a search string like:

*coasters

same happens if you will use a search term like

coaster*

(OR #roller sign is not found, without only the url)
your words will not found by this search strings, even if they exist in this cases, you have to know the exakt beginnings of the words
so sadly the useful tilde search also not works.

if you just enter park in the searchfield everything ist fine……

but all that is currently the „state of searching in devonthink“
the Help Syntax description looks quite powerful but at the end, your files will not all (or nothing) be found, because
„you have to know the exact beginning of your words“
with combinations of words (relatively common for the language of mine) that documents gets sadly lost without a match from the beginning

i don’t understand professional programming, but:
SQLite FTS contains and suffix matches (with compression)
https://blog.kapeli.com/sqlite-fts-contains-and-suffix-matches
FTS4 for iOS
https://stackoverflow.com/questions/21377073/ios-sqlite-fts-extensions-no-such-module-fts4-error

If you use pspdfkit to fetch it, they also mention to use the LIKE statement

You can create a workaround by using SQL’s LIKE predicate in a query
https://pspdfkit.com/blog/2018/leveraging-sqlite-full-text-search-on-ios/

https://medium.com/better-programming/ios-advanced-memory-debugging-to-the-masses-24d25852a91c
Maybe you can add a Ram Flush, before you run a big Database search from the Ram itself.
Maybe a compressed spitted string database only have 500-1000 mb and is useable with the described method from the post blog.kapeli.com with the new iPhones an iPads with the bigger ram.
Hopefully next year will start the great Sidecar Apps with a new iPad and a new Pencil…
Maybe read a separate word indices database (only for words that are different) into the ram, and only hold the pointers to the document for that the word matches in it, afterwards the document itself gets searched with the like operator itself.
You are friendly pointing out that it will grow up the index size, but i´m one of the guys that would wait for the search up to a minute if i get all matches that are important for me.
And as always if i would like to prefer always the LIKE operator i could split my Database into a smaller ones for that i use it mostly, or use the Group Selector, or maybe a smart group for a search scope.
If you would add a alternative LIKE search that can be separately chosen from the User itself with the next big Update from the DTTG app it would help a lot.

other ideas:
first i think to reversed words but without the full end in the search it doesn’t help…
https://stackoverflow.com/questions/8632678/sqlite-full-text-wild-card-search

(OR the use of the LIKE statement with FMDB itself) )
https://stackoverflow.com/questions/9008682/fmdb-query-isnt-acting-right-with-like

i would vote for a full search/tilde search support from the beginning of the words in the mobile versions of devonthink. (:

thank you for reading.

1 Like

The request is noted. We will investigate this as time allows.

+1