Improve Things3 Quick Entry

HI There,
I enjoy using things3 from cultured code as my todo app. I use a variety of ways to enter todo items into the app: The app itself on iPhone and my Mac as well as Siri and Drafts on iPhone and an Alfred Workflow on my Mac.

All methods have one thing in common: You cannot easily and quickly enter tags, dates and what project the todo is to be filed under. The Quick Entry Window in Things3 allows to do this with a number of clicks but I'd like to speed up the process with only keyboard entry.

What I would like to accomplish is the following: I enter a todo in Alfred on Mac, Drafts on iOS or the Quickentry of Things3 like this: "task title @project #tag1 #tag2 !date" and now somehow ensure that Things3 moves the todo to the project entered and adds the tags and review date. Is this possible with applescript? I just do not have enough understanding the matter to see if that is even possible: https://culturedcode.com/things/download/Things3AppleScriptGuide.pdf

1 Like

This would be GREAT to have a better quick entry in Things3. It’s all possible in the native quick entry window, but the number of clicks and tabs is a bit surprising for such a polished app.
Anybody KM automate this yet ....? I also don’t have the chops to script this stuff yet

1 Like

@David_Landes I only just saw this post today thanks to @schiasson bumping it, so this macro is still rudimentary, but in my testing, it does accomplish what you describe. This version uses a KM Prompt for User Input action, but it could be modified to accommodate entry via an Alfred workflow without too much trouble.

Things Quick Entry Improved.kmmacros (8.1 KB)

Instead of AppleScript, this uses the Things 3 URL scheme, which may actually be more flexible when it comes to parsing dates (for example, I've set the review date to the current date by default, but you can use "today" "tomorrow" "in 3 days" etc. for the date. See that link for more information).

1 Like

Thanks for that macro. I installed it and see there are some special characters to type as you create the entry : @ ! etc. Not something totally intuitive to me as I quickly want to dump an idea out to remember later, but maybe with repetition it would get easier.

Since the main use of tweaking the quick entry was to send to different projects without 17 tabs and arrow keys, maybe I can modify this to have some pre-chosen projects identified and use palettes or another KM feature. I’m early into exploring so will have to see what’s possible, but hearing nothing is impossible with this app.

No problem. I only used those special characters in this macro because that was what the OP said he wanted; it's absolutely possible to create a macro that doesn't. Off the top of my head, you could also preface each field to be filled in with words and a colon, like Title:To-Do and Project:Work, just by way of an example.

It's also definitely possible to create several similar macros with pre-defined projects or tags, select one from a palette or a Prompt With List action, and then just enter the task name or review date or whatnot. My advice is, see how far you can get on your own by modifying my example macro, and if you can't seem to tweak it to a system that's more to your liking, feel free to report back and ask for further help.

I love this idea!

Just having some issues getting it to open the URL in Things.

I keep getting

"The URL scheme cannot be empty and must be set to "things:"

I am sure its a simple fix but its been bugging me all day.

I assume you're using KM 9? KM 9 changed the way the "Percent Encode for URL" filter worked, so the macro just needs to be updated to account for that. This tweaked version worked in my testing:

Things Quick Entry Improved 1.1.kmmacros (9.1 KB)

Wow! That works thank you for the quickest reply ever!

1 Like

I think this weekend I am going to try and set this up a bit diferenty.

Each input having its own line with a dropdown menu except the title

Having a Project or Area with a dropdown of the 5 areas I have in my Things App

Having a few different tags as an option.

Have you seen this done or do you think all of those strings would jam everything up

I haven't seen this done personally, but there's no reason the strings would jam everything up. You could assemble a Things URL that way just like I did with the single-line prompt here. You might even be able to re-use most of the same actions, maybe just changing the ones at the top that process the text from a single string.

Having Some trouble getting KM to get the text from the with the additional 2 buttons (Dropdowns)

I'm afraid I can't tell where the problem could be from that screenshot alone, since you didn't show the part where you use the new variables to build the URL. That said, I can tell you that you don't need to use the same @, #, and ! notation here, since that was only used in the single-line version to tell the macro how to parse the different text. With a prompt like this, you can just enter the text directly and it will work fine as long as the resulting URL is correct. In fact, with a prompt like this, you can even go a step further with a little AppleScript and have the macro automatically populate the area/project and tag dropdowns with the same projects and tags you're already using in Things:

Things New To-Do.kmmacros (5.1 KB)
image

AppleScript:

tell application "Things3"
	set AreaList to name of every area
	set ProjectList to name of every project whose status is not completed
	set TotalProjectList to AreaList & ProjectList
	set TagList to name of every tag
end tell

set text item delimiters to "|"

set inst to system attribute "KMINSTANCE"

tell application "Keyboard Maestro Engine"
	setvariable "LocalProjectList" to TotalProjectList as text instance inst
	setvariable "LocalTagList" to TagList as text instance inst
end tell
1 Like

This is AMAZING!

Not sure how you could do it so fast and its way better than I could have made it.

I am not abee tab+ Scroll though the pick lists, is that a KM 9 bug?

Thanks, but it just comes with experience :slightly_smiling_face:
The more you use KM and learn what it can do (especially in conjunction with AppleScript or JavaScript for Automation) the easier it becomes for anyone to make macros like this.

That's a KM bug, yes. Fortunately, you can work around it by hitting Escape once, and from then on it will let you use the arrow keys as you'd expect.

1 Like

Well thank you so much! I've learned a lot about apple script from the awesome users of this forum and have enjoyed the process of creating these macros! Thanks again!

1 Like

I know this is an old post, but as to quckly allocating a task to a project, that's easily done by hitting ⌘⇧M. As far as I know, that works in QuickEntry and in Things itself :slight_smile: Maybe they added that after this post was made!