Single key filing of documents


New user of DevonThink trying to get a lot of imported data filed. I’m looking for a single keystroke solution to move a document somewhere (I can live with nearly anywhere as long at it is consistent) and then move on to the next item.

In other words, like ^C with the Classify sidebar, except always to the same place. With the Classify sidebar, if DT gets it right, you can just hit ^C and DT will file the current document and move on to the next one. I just want to have everything moved to the same place. (While it would be nice to pick where the documents go, it’s easy enough to collect them all someplace and move them to the right location as a group.)

I’ve looked at the Move script, but it leaves nothing selected after running. I need DT to move to the next item.

I’m open to scripting or just learning about functionality I’m not aware of. I’m also open to leveraging other tools (like Keyboard Maestro), but since the move command is only available from the contextual (right-click) menu and not available from the top menu, it’s not clear how I could make it work with keyboard macros. Google turned up some interesting reading, but I found nothing that seemed to provide a solution for me.

As a last resort, there does seem to be one option that I think would work. If I give up the Trash (keep it empty), the delete key does what I’m looking for, and it appears that you can pretty much do whatever you want with items that are in the Trash. So as long as I don’t use the Trash for trash, I think I could collect documents in the Trash and then move them where they belong. For obvious reasons, I’d prefer not to use the Trash as my collector, but it seems like it would probably work.


Yeah - DON’T use the Trash as a pseudo-filing cabinet (any more than you’d use the one in your kitchen for temporary storage!)

You can do this kind of action in Keyboard Maestro, noting it works on files in the same database as the destination folder. The selection change doesn’t work properly when you’re in another database.

Thanks Jim. This looks very helpful. A couple of questions.

  • What is the magic UUID and where would I find it for my databases? I believe that DT does use UUIDs, but I haven’t seen them exposed anywhere (in get info, database properties, etc.).

  • I assume (name, name of database) should be (“my group”, “my database” of database)?

  • Or is that not the case because of the “of destGroup” (which references the magic UUID)?

Sorry for what may be dumb questions, but I’ve never loved AppleScript so never become super experienced with it, and obviously have no experience with AppleScript specifically with DT other than looking at the provided samples.

DEVONthink uses and relies on UUIDs. They aren’t exposed directly but if you right-click a record (group or file), you can choose Copy Item Link. Note the link will include “x-devonthink-item://”, which you can just remove.

Also, note this is one approach to specifying a destination group, but it’s good because it relies on an unchanging UUID instead of a name or location that potentially can change.

Using the destGroup variable alleviates the need for hardcoding values.

Finally got to try it, and was able to get it working.

Thanks very much for your help, Jim.

No problem. Have fun with it!