Smart Rules Folders For Better Organization

With respect, I don’t think this post indicated “super arrogance” but rather, programming challenges that need to be addressed with some care. See, for example, this post which indicates one of the considerations.

I do not find the developers “arrogant” and very much appreciate that every release works and is solid. I have too much valuable information in my DEVONthink databases to take risks with ill considered programming.

Stephen

5 Likes

There is no stubbornness on this matter. We have a list of things to do or could be done that would take longer than all our combined lifetimes to accomplish.

How hard can it be, honestly, to create a hierarchical system for the Smart Folder list. I just did it.

If your method satisfies you, that’s great!
However, what you consider trivial is not trivial at all. This is not a mere cosmetic adjustment. Smart rules’ behavior can depend on rules that came before them. Segregation of rules could lead to unintended behavior or break intentional behavior using the order of rules.

4 Likes

I do not agree with this statement. And I doubt that it helps to get your request any nearer to realization, too.

As a side note: When I see a ton of rules that do Auto-tag this, Auto-tag that, and Auto-tag somethingelse, I’m quite certain that someone is going for a brute force approach instead of a simpler one: Writing a script that scans the text for (a) keyword(s) and then applies the relevant tag(s) itself. A single smart rule executing this script would get rid of a ton of individual smart rules. And possibly of the need to “folder” them. Also, it would offer a lot more flexibility (if it’s well written) since one would only have to add a keyword : tag pair to it for a Auto-tag anothertag rule.

4 Likes

A Scan Name/Text action using a regular expression might also be sufficient.

1 Like

How would one go about that? One could specify an RE like (keyword 1|keyword 2|keyword 3). But then I would need something™ to set the tag to tag1, tag2 or tag3 depending on which keyword was found. While this would be possible with the replace method in JavaScript (or possibly similar functions in other environments), I do not see any way to achieve this with a simple RE match: There’s no way to figure out which of the keywords was matched.

E.g. like this:

2 Likes

Alternatively define all your tags first, then simply use the action Execute Script > External > Tags - Assign

1 Like

Right. But it is still a “one tag, one rule” approach. I expressed myself badly before. Or maybe not – you described how one would set the tag to keyword1, keyword2 or keyword3. I was talking about a mapping of keyword1 to tag1, keyword2 to tag2 and so on. That’s quite different because I’d like to assign Search engine to Google, Windows to Microsoft, and macOS to Apple. That is, I’m still convinced, not possible with a regular expression currently.

Please see

for a hopefully better explanation. That way, it would be possible to have a single smart rule to assign all (or at least a lot of) tags to records using simple string matching or regular expressions at leisure.

A simple rule is not sufficient but defining the tags first and adding the desired aliases would make this possible.

A UI-based approach would be to give me a way to organize my rules and another way to prioritize their execution. Again, it’s not that complicated.

So, I’m not as dumb as my “smart” rules might seem. I have separate auto-tags because they have separate filter criteria and I like to be able to shut them on/off individually. Also, I haven’t written actual code (which is what I assume you mean by “script”) in years. What percentage of business users can “script” by your defintion?

The existing model conflates two things: visual organization and priority. I suggest there is a relatively straightforward fix to this, which is to provide a mechanism for organizing and a mechanism for prioritizing.

I personally feel this is akin to saying “the way to win a football match is to score more goals; it’s really that simple”; whilst your fix is obvious, you don’t describe what the fix actually is. I’ve thought about this problem numerous times in the past, and haven’t come up with anything suitably clean. Have you got a suggestion as to how you would define rule priority?

2 Likes

I have been pushing harder than anyone else on this Forum for Smart Rules Folders. It would be extremely helpful in my use case.

That said, I completely understand that what seems “not complicated” given my databases might well cause chaos to another user’s databases. As Devontech explained, the UI affects the order of execution of smart rules, which in turn can have immense consequences for some users.

While I share your frustration at the delay, my frustration is not aimed at DevonTech staff. They are among the most willing to respond to user requests and suggests workarounds that I have ever experienced. I have no doubt if there were an easy/quick solution to this it would have been implemented long ago; and I have no doubt they will ultimately add this feature as soon as practical.

4 Likes

While I understand what you’re saying, I disagree with your way of saying it: On the one hand, you haven’t “written code in years” and on the other hand, you are certain that writing the code you want is “not that complicated”. That boils down to “the developers are too lazy or disinterested to do the simple thing I want.”

There’s a relatively small team of developers and a huge list of features users are asking for (me included). Ad hominem attacks are probably not getting your wishes prioritized.

One way to lighten your perceived burden might be fewer rules. I’ve posted a sample script elsewhere in the forum. It can perhaps be used as a starting point (adding, for example, conditions to it).

Smart rules are ok, but still relatively dumb (no loops, no conditionals, simplistic predicates). So, for more demanding scenarios, I’d go with a script where I can do things easily that might be more difficult or impossible with smart rules.

2 Likes

Again, it’s not that complicated.

I understand you think that is the case, but it’s simply not.
Trust me (or not :wink: ), if the solution were simple, we would have implemented it long ago.

Again, it’s not merely a cosmetic change you’re talking about. The order of smart rules targeting a location makes a difference. And while you may say, “I’m not doing such things!”, we have people who are. We can’t break things for them to suit those who aren’t utilizing those options.

What percentage of business users can “script” by your defintion?

We don’t have any particular metrics on this. However, we have many people who script, AppleScript (ObjC) and JavaScript as well. DEVONthink is well known for its robust automation options, and scripting is a large part of that. In fact, we have many people who have begun scripting because of DEVONthink, a fact we are proud of. :heart: :slight_smile:

PS: @chrillek is not an employee of DEVONtechnologies; he’s just a well-respected and knowledgable participant on these forums. If you’re looking for one of us, we have our teal ammonite circle on the side of our avatar.

6 Likes

There’s me thinking it was kryptonite… :grinning:

2 Likes

New Macs are my kryptonite. I am powerless against them! :stuck_out_tongue_winking_eye:

2 Likes

I had this sudden vision of this one person trying to save the world. They are instructed to look for the person with the teal ammonite circle on the side of their avatar. 48 hours later they are still rooted to the spot, wondering what on Earth one of those even is. (Set the scene in your mind with mayhem, darkness, smoke, dramatic voices and a tear or two.)

:raising_hand_man: (and I remain immensely grateful to you for that bespoke script that got me going)

3 Likes

I could have said ”look for the cute blueish-green curlicue” :stuck_out_tongue:

1 Like