How to create Pomodoro worksheet in FoldingText

Pomodoro Technique, (c) 2009 Francesco Cirillo

FoldingText lets you mix and match several of its unique features in a dynamic and functional document that’s much more than just static text. Here’s a quick and dirty example of how to use FoldingText with the Pomodoro Technique.

In brief:

  • Use the .timer mode to set up the all-important Pomodoro Timer
  • Use the .todo mode to set up your To Do sheet
  • Use headers to organize your other sheets
  • Use tags to track actual and estimated time, interruptions and others
  • Use keyboard shortcuts to move lines between sections
  • Use the Folding or Focus features to only show what you need to see right now
  • It’s all in a plain text file so you can take all your records with you.

Step 1: Set up your timer

Type # Pomodoro.timer to start a new section that uses the .timer mode. You don’t need the header #, but it makes Folding and Focusing possible. Hit [return] and [tab], then set up your timers. Type this out or copy & paste:

First pomodoro for 25 minutes
Break for 5 minutes
Second pomodoro for 25 minutes
Break for 5 minutes
Third pomodoro for 25 minutes
Break for 5 minutes
Fourth pomodoro for 25 minutes
Long break for 15 minutes

Watch as the approximate times are automatically set in the lefthand margin. To start a Pomodoro block when you want to, just click on the first time to the left of “First pomodoro…”

When a time segment finishes, FT will beep to let you know and automatically move on to the next stage.

Note: You don’t need to start a whole new document. If you want, just insert this entire section in an existing FT document under its own header. Add a header level (+1 #) to each section, and it’s nicely self-contained.

Step 2: Set up your To Do sheet

On a new line, type # Today.todo to start a new section that uses the .todo mode. Hit [return] and [tab]. You can start typing up your list here, or wait until you have filled out your Activity Inventory sheet in the next section. Start a line with '- ’ and they’ll turn into todo items with a checkbox.

Click the checkbox or type @done at the end of the line to cross off the task and mark it as completed.

Step 3: Set up your Activity Inventory

We’ll just use the normal text-editing mode here. On the unindented line, type # Activity Inventory, hit [Return] then [Tab], and start typing up your list using - [your task here].

Optional: Use @tags to track things like the task’s estimated time and actual time. For example, @time(estimated,actual) or something that works best for you.

Note: Because this section doesn’t use a special mode, the lists don’t use the .todo mode’s checkboxes. This is nice for some visual separation between the Activity Inventory and the To Do sheet.

Step 4: Create any other sections you might want to use

Myself, I just keep a basic Notes section and call it good. For canonical Pomodoro, create a Records section to keep track of interruptions and other things.

Step 5: Move tasks into the Today.todo section and start working.

  1. Use copy/paste or the Move Line Up/Down shortcuts to move some tasks into the .todo section. The hyphens will turn into checkboxes.
  2. Click on the time display to the left of “First pomodoro…” in the .timer section to start the timer.
  3. Work until FT beeps at you. You can Collapse sections you don’t want to see right now, or use Focus to only look at one section at a time.
## Pomodoro.timer

Start : Jul 31, 2012 9:46:02 AM
First pomodoro for 25 minutes
Break for 5 minutes
Second pomodoro for 25 minutes
Break for 5 minutes
Third pomodoro for 25 minutes
Break for 5 minutes
Fourth pomodoro for 25 minutes
Long break for 15 minutes

## Today.todo

- Put together a Pomodoro template @time(1,1) @done
- Write about this Pomodoro template

## Activity Inventory
- Work on revision 2 of this template
- Do some actual work.

## Records Sheet

## Notes

1. Click on the "First pomodoro" time to get the ball rolling for the first big block.
2. Use whatever tagging and tracking you need. It's all text.
3. Use 'Move Lines Up/Down' shortcuts to shift things between lists.
4. Note to self: Stop fiddling and get some real work done!

Is there a way to alter the sound effects? I like my tomato timers to make more noise. I know this is a built-in mode, but perhaps by duplicating and modifying it?

I understand that the next Dev release will read the soundName key in notification code, which should make it possible to do things like this (which at the moment ignores that key and plays a fixed sound):

function run () {

	function fnFT(ed, opt) {
		var nc=window.nativeViewController;
				title : "title",
				subtitle : "subtitle",
				informativeText : "informativeText",
	var docsFT = Application("FoldingText").documents(),
		varResult = docsFT.length && docsFT[0].evaluate({
			script: fnFT.toString(),
			withOptions: {
	return varResult;

Very cool. I hope that it is coming soon. Thanks!

Just noticed that the mode has been renamed from .timer to .schedule

From the docs:

Note: The Timer mode is now renamed to Schedule. Please replace occurrences of .timer with .schedule in your documents. For help converting your existing FoldingText documents, we notify you as soon as we detect the .timer mode is used.

Since we are transitioning .timer to .schedule, The .timer mode will not have any functionality at the moment, however that is subject to change in the future.