Hook integration scripts v. 104: Adds support for 2Do app by Beehive Innovations

Version 104 of Hook integration scripts is now available.

In response to a Hook user’s request, we have added support for the 2Do app which is developed by Beehive Innovations. “GTD, XYZ and everything in between. A powerful task manager.”

Use cases galore

It is often very useful to link tasks with the resources that they involve, so that you can instantly navigate between them. For instance,

  • If you are writing a new document, you might want to link your tasks about it to the document itself.
  • If you are doing software development, you might want to link a folder in Git and/or your local drive to your development tasks.
  • You might also want to link tasks to issues and bug tracking systems (e.g., Bugzilla, Trello).

That way, you can immediately navigate from the resource to your next task pertaining to it, or vice versa.

The possibilities are endless.

We hope 2DO users will enjoy the integration. If you use 2Do with Hook, please feel free to spread the word about their interoperability :slight_smile: .

Meanwhile, looking forward

We have been busy implementing substantial extensions to Hook requested by customers. We look forward to publishing them soon.

How to get the update

You don’t need to relaunch Hook to obtain integration updates. Hook’s software update / check automatically tries to install the latest integration scripts. Automatic updating can be enabled or disabled.

It doesn’t work for me, if I select an item in the 2Do app and activate hook there’s a “no linkable item found in 2Do” message ;-( Any idea why?

Sorry this one fell through the cracks here, and looks like no 2Do user picked up on it either. I have gotten in touch with a 2do user who asked for the integration, and we will have a look too. The 2do developer added support specifically for automated linking earlier this year.

Welcome to the Hook Productivity Forum , @intermagic

A dev tested and found it works for her (macOS 10.15).

Here are some trouble shooting tips: No Linkable Item in … – Hook.

If that doesn’t solve it, then some questions

  • what 2do version are you using?
  • What macOS version are you using?
  • could you send us a screenshot of the Hook window in context of 2Do?

thanks

@intermagic . I thought maybe it might be a language issue. So a dev here looked into German. It seems to her that the menu item labels do not change when language changes.But to be sure, could you let us know what language you tested in.

Anyone else having issues with Hook & 2Do?

Perhaps those tips resolved the issue for you?

1 Like

Hey LucB, thanks for your effort! Yes, might be a language based problem, it still doesn’t work but that’s not a big problem at the moment, no big deal!

Hello

I am having the same issue (“no linkable item found in 2Do”). I looked at your link and it didn’t help. English UK as language.

I am fully updated:

  • MacOS 10.15.6
  • 2DO 2.6.26
  • Hook 1.8 (3439).

See this screenshot Screenshot 2020-09-08 at 15.51.11.

I tried a couple of tests again: list items and smart list. 2do - list item Screen Shot 2020-09-08 at 10.38.39 2do- smartlist  Screen Shot 2020-09-08 at 10.36.42

I don’t have sync turned on. is your test with sync?

I’m using the SetApp version. If yours is a different version? could you try

  1. Select 2do.app
  2. Show package contents.
  3. Open Contents folder
  4. open Info.plist in a text editor ( TextEdit, BBEdit , whatever)
  5. search for CFBundleIdentifier and
  6. copy the the subsequent <string> line? (it should look like com.guidedways.TodoMac …
  7. pasting it here.

Thanks,

Luc

Looks like they sell 2do in three places each with its own bundle ID: setapp, app store, paddle store. We have bundle ids for setapp and apps store, but don’t have one for paddle store. so if any 2do.Paddle user would like to share the bundle ID, we’ll add it (users can also do that themselves).

I have tried both list items and smart lists, it doesn’t work either way.
I got 2Do from the Mac app store. Below is the text you wanted (well, probably more than you wanted)

<key>CFBundleIdentifier</key>
	<string>com.guidedways.TodoMac</string>
	<key>CFBundleInfoDictionaryVersion</key>
	<string>6.0</string>
	<key>CFBundleName</key>
	<string>2Do</string>
	<key>CFBundlePackageType</key>
	<string>APPL</string>
	<key>CFBundleShortVersionString</key>
	<string>2.6.16</string>
	<key>CFBundleSignature</key>
	<string>????</string>
	<key>CFBundleSupportedPlatforms</key>
	<array>
		<string>MacOSX</string>
	</array>

thanks for that. That bundleID is included in Hook.

when you select a task, are 2do’s

  1. Task menu Copy Shareable Link enabled?
  2. Edit menu Copy enabled?

could you please send us the result?

They are enabled: after selecting one item, clicking on:

  1. Copy Shareable Link in the Task menu, versus on
  2. Copy in the Edit menu

and then pasting the result in a text editor I get respectively:

  1. twodo://x-callback-url/showTask?uid=8e221ee6973f495087c0a354de632b0e
  2. ✮ cancel bawag account

Could you please try selecting a task in 2do, and then pasting the following in /Applications/Utilities/Script Editor and hitting run? (that is Apple’s App)

try
set the clipboard to ""
tell application "2Do"
	activate
end tell
delay 0.1
tell application "System Events" to tell process "2Do"
	if enabled of menu item "Copy Shareable Link" of menu 1 of menu bar item "Task" of menu bar 1 then
		click menu item "Copy Shareable Link" of menu 1 of menu bar item "Task" of menu bar 1
		delay 0.1
		repeat 10 times -- poll clipboard for ~2.5 seconds. Sometimes set x to teh clipboard throws exception
			try
				set myUrl to the clipboard
				if myUrl is not equal to "" then
					exit repeat
				end if
			end try
			delay 0.1
		end repeat
		set the clipboard to ""
		delay 0.1
		click menu item "Copy" of menu 1 of menu bar item "Edit" of menu bar 1
		delay 0.1
		repeat 10 times -- poll clipboard for ~2.5 seconds
			try
				set myText to (the clipboard)
				
				if myText is not equal to "" then
					exit repeat
				end if
			end try
			delay 0.1
		end repeat
		set n to count of paragraphs of myText
		if n is equal to 0 then
			set firstLine to myUrl
		else
			set firstLine to item 1 of paragraphs of myText
			if firstLine starts with "- " then
				set firstLine to text 3 thru -1 of firstLine
			end if
			set len to the length of firstLine
			if (len > 256) then
				set firstLine to text 1 thru 255 of firstLine
			end if
		end if
		return "[" & firstLine & "](" & myUrl & ")"
	end if
	
    end tell
on error errMsg
	display dialog errMsg
end try

and sending us the result?

I have just realised that I have the same issue as with 2Do with several other apps, e.g. these:

  • Skim
  • CodeRunner
  • Typora

though they are listed as linkable, and also with the following ones (to which Hook should currently link via “UI scripting”):

  • Drafts
  • BusyCal
  • Forklift

It also doesn’t work with TexPad and Acrobat Pro 2017 (which are just not listed)

So far I mostly used Hook with Finder, EagleFiler, Mail, Safari, and with those apps it works fine. It also works with Excel, Word, Powerpoint, Preview, Marked 2

Sounds like a Accessibility Permissions issue . Could you please check , per that link, whether you’ve granted access to Hook for those apps?

While I had granted those permissions (and system preferences confirmed this), often when I did Hook would crash and I had to restart it. This made me think I should try to restart my computer. I have now done so and…everything works as it should!

1 Like

Hi everyone,

I’m still unable to use Hook with 2do. After reading these posts, I’ve found that the problem is with the access permissions, because 2do is not listed at all under Security & Privacy > Automation > Hook (neither checked nor unchecked). The issue is just that Hook never asked me for access to 2do, I just reinstalled it just to be sure.

I haven’t had this problem with any other app that’s listed under Linkable Apps. Is there a way to manually grant Hook access to 2do if that dialogue doesn’t appear?

I’m using the Setapp version of 2do and MacOS 11.3.1.

Welcome to the Hook Productivity Forum , @pkus . And thanks for asking about this.

that can happen.

Are you using a version of Hook prior to 3.0 on a M1 Mac? There’s a Rosetta 2 problem with macOS permissions that Hook 3.0 avoids as it is compiled for both M1 and Intel (i.e., does not involve Rosetta 2).

Resetting permissions from the command line (URL mentioned elsewhere here I believe) might fix that kind of problem too.

You could try using 2do in a different macOS account on same Mac to see if it’s that.

Thank you for your reply.

I’m running the latest version of Hook (still the trial if that’s relevant) on an Intel, so that shouldn’t be it. Resetting permissions also didn’t solve the problem.

However, this is not a big deal. The reason I wanted to try out 2do was that they supposedly have an Android version, but when I tried to download that on the weekend the link on their website was dead and it’s not on the Play Store. So 2do won’t be a solution for me anyway, and there was no other app where I’ve had that problem.

That brings the list of Task Managers that are compatible with Hook and also cross-platform down to Todoist, but at least that makes it an easy decision :slight_smile:.