FoldingText script for Due.app reminders

For some reason I like the sound of Due.app classical guitar alarm at the end of an allocated period of time (fairly gentle – doesn’t make me jump : -)

Yesterday I slightly refined a script which I use to:

  • Select a line in FoldingText
  • Launch a timed Due.app reminder, using the text of the line, and set for a period of time based on any @mins(25) or @pom etc tags, but falling back to a default number of minutes if there are no tags.

@derekvan pointed out to me that there is a way of using nested x-callback urls to create a chain of timed reminders, each starting when its predecessor ends.

So in the updated script, you can now select several lines in your FT document (discontinuous ⌘-click selections are fine) and create a chain of Due.app reminders.

When the first reminder sounds and you are ready to move on, tap the → right arrow key in Due.app, and the next reminder in the chain will be initiated.

You can customise the script for the kind of tag conventions @mins(25) @pom(25) or @pom @pom(2) that you are using. If you use some kind of @pomodoro tag, you can specify how many minutes per @pom : -)

(Extract from the top of the script):

property plngDefaultMins : 55
property pstrMinutesTag : "mins" -- eg @mins(30)
property pstrPomodoroTag : "pom" -- eg @pom or @pom(2) but see plngMinutesPerPomodoro below

-- EXCHANGE RATE: MINUTES PER POMODORO UNIT:

-- set plngMinutesPerPomodoro below to 1 if @pom(2) just means two minutes 
-- but set for example, to 30 if @pom(2) is an hour
-- @pom and @pom(1) are interchangeable

property plngMinutesPerPomodoro : 1 -- OR 25 ETC ?

property pDescription : "

	FIRST ADJUST SETTINGS:
	Edit values above for:
	- Default number of minutes if there is no tag (plngDefaultMins, default 55)
	- Tag to use for number of minutes (pstrMinutesTag, default mins, eg @mins(30) )
	- Tag to use for pomodoros (pstrPomodoroTag, default pom, eg @pom, @pom(2), @pom(25))
	- Number of minutes per pomodoro (plngMinutesPerPomodoro, default 1, but might be 25 or more)

	THEN USE:
	1. Select one or more lines with or without @mins(N) tags (discontinuous ⌘-click selections are fine )
	2. Run the script and confirm the first reminder
	3. Whenever a reminder terminates, tap the **right arrow key** in Due.app to launch the next x-callback
	4. The next timed reminder will be initiated.

"