Actions in Agenda allows you to type short commands that upon completion get dynamically converted and expanded into plain text, or invoke a certain action like marking a note as On the Agenda. Think about it as a quick way to trigger an action like typing \remind
to insert a reminder or \date
to insert the current date.
Actions are prefixed by a backslash character (\
) that invokes an autocompletion menu that shows the available actions and that can be further filtered by typing the first few characters of the action you’d want to use.
Tip: On iPhone and iPad without a hardware keyboard, typing the backslash character can be a bit cumbersome. Instead you can simply tap-and-hold the plus button above the keyboard to trigger the action menu. Handy!
Many of these actions can take so called parameters inside parenthesis (similar to how you can add value parameters to tags), to further refine the behaviour of these actions. For example, \date(in: 2 weeks)
inserts the date two weeks from now instead of the current date.
Parameters labeled as Default are considered the default parameter if none is provided. For example, \tag(important)
is considered the same as \tag(name: important)
.
Most actions also work inside templates, and in addition templates also support some actions that only work in templates, for an overview of these see Creating and Using Templates.
To see actions “in action” have a look at the Agenda 14 update video:
Below you’ll find a complete overview of the Actions that Agenda currently supports.
Insert
\tag
- inserts a tag token into the note text
- synonyms:
#
,\insert-tag
Parameters
-
name
- the name of the tag - Default, Required -
color
- the name or hex-value of the color of the tag - Premium -
value
,text
,string
- an optional text value - Second Default -
day
,on
,after
,before
,until
,from
,in
- an optional day value -
date
,at
- an optional date value -
int
,integer
,number
,level
- an optional int value -
float
,double
- an optional float value
Examples
-
\tag(name: important)
- creates the tag#important
, equal to\tag(important)
-
\tag(important, color: blue)
- creates the tag#important
with a blue color -
\tag(important, color: #333)
- creates the tag#important
with the hex color #333 -
\tag(priority, value: high)
- creates the tag#priority(high)
, equal to\tag(priority, high)
-
\tag(due, day: tomorrow)
- creates the tag#due(6 April 2022)
-
\tag(due, in: 3 weeks)
- creates the tag#due(26 April 2022)
-
\tag(deadline, at: 17 oct 2022 13pm)
- creates the tag#deadline(17 Oct 2022 at 13.00)
-
\tag(priority, int: 1, color: red)
- creates the tag#priority(1)
in red -
\tag(version, float: 2.1)
- creates the tag#version(2.1)
\person
- inserts a person token into the note text
- synonyms:
@
,\insert-person
,contact
Parameters
-
name
,alias
,nickname
- the name of the person - Default, Required
Examples
-
\person(name: Tom G)
- creates the person@(Tom G)
, equal to\person(Tom G)
\reminder
- inserts and schedules a reminder in the Reminders app
- synonyms:
\remind
,\insert-reminder
Parameters
-
none
- inserts a placeholder reminder that is not scheduled -
due-date
- a natural language string representing a date in the future - Default -
title
- the title of the reminder to schedule -
list
- the list in the reminders app on to which to schedule the reminder -
all-day
- schedules the reminder as an all-day reminder
Examples
-
\reminder
- creates an unscheduled reminder and open the edit popover -
\reminder(today)
- schedules a reminder for today in 30 minutes -
\reminder(today at 6pm)
- schedules a reminder for today at 6 o’clock -
\reminder(tomorrow evening)
- schedules a reminder for tomorrow at 6 o’clock -
\reminder(in 3 weeks)
- schedules a reminder 21 days from now -
\reminder(25 dec 2020, at 8pm
)` - schedules a reminder on the 25 dec 2020 at 8 o’clock -
\reminder(today at 6pm, list: important)
- schedules a reminder for today at 6 o’clock on the reminder list “important” -
\reminder(all-day: tomorrow)
- schedules an all-day reminder for tomorrow
\star
- inserts a star at the end of the current paragraph into the note text
- synonyms:
#star
,\insert-star
,\flag
Parameters
-
none
- inserts a star at the end of the paragraph
Examples
-
\star
- creates a star at the end of the paragraph, equal to#star
\date
- inserts the current date into the note title or text
- synonyms:
\insert-date
Parameters
-
none
- inserts the current date in the default format -
full
,long
,medium
,short
- a standard date format in the given form - Default -
format
- a custom formatted date, see tip and note below -
locale
- the locale to use for formatting the date -
timezone
- the timezone to use for formatting the date -
in
,for
,offset
- a different date than today
Examples
-
\date
- 22-07-20 -
\date(full)
- Wednesday, July 22, 2020 -
\date(short)
- 7/22/20 -
\date(format: dd-MM-yy)
- 22-07-20 -
\date(full, locale: no)
- onsdag 22. juli 2020 -
\date(for: tomorrow)
- 23-07-20 -
\date(in: 2 days)
- 24-07-20 -
\date(offset: 3 weeks)
- 12-08-20
Tip: For a complete overview of supported date formats, see UTS #35: Unicode LDML: Dates. As an example:
\date(EEE\, MMM d\, ''yy)
will result in Wed, Jul 22, '20. Note how the comma’s in the pattern need to be escaped with a slash or it is seen as a next parameter. The same is true for colons, like in this example:\time(format: HH\:MM)
, resulting in 18:34.
Important: When a format is provided as a parameter, either a custom one or the full, long, medium, short ones, it also becomes the default format when you omit the parameter by just typing
\date
. To restore the format back to medium, you can type\date(default)
once.
\time
- inserts the current time into the note title or text
Parameters
-
none
- inserts the current time in the default format -
full
,long
,medium
,short
- a standard time format in the given form - Default -
format
- a custom formatted time, see tip and note above -
locale
- the locale to use for formatting the time -
timezone
- the timezone to use for formatting the time
Examples
-
\time
- 12:27 -
\time(full)
- 12:27:15 PM Western European Summer Time -
\time(short)
- 12:27 -
\time(format: HH\\:mm\\:ss)
- 12:27:33 -
\time(medium, locale: en_US_POSIX)
- 12:27:15 PM
Tip: For a complete list of locale’s see iOS Locale Identifiers · GitHub, for a list of timezone identifiers, see iOS Time Zone list - Readdle Knowledge Base
\now
- inserts the current date and time into the note title or text
- synonyms:
\timestamp
Parameters
-
none
- inserts the current date and time in the default format -
full
,long
,medium
,short
- a standard time format in the given form - Default -
format
- a custom formatted time, see tip and note above -
locale
- the locale to use for formatting the date and time -
timezone
- the timezone to use for formatting the date and time
Examples
-
\now
- 22-07-20 02:30 -
\now(full)
- Wednesday, July 22, 2020 at 2:29:53 AM Western European Summer Time -
\now(short)
- 7/22/20, 2:30 AM -
\now(format: dd-MM-yy HH\\:mm\\:ss)
- 22-07-20 02:30:30 -
\now(medium, locale: en_US_POSIX)
- Jul 22, 2020 at 2:31:03 AM
\expression
- inserts the calculated result of an expression into the note text
- synonyms:
\formula
,\insert-expression
,\math
Parameters
-
math
- a mathematical expression to be calculated - Default -
sum
,add
,total
- a comma separated list of values to be added up -
count
- a comma separated list of values to be counted -
min
,minimum
- a comma separated list of values from which to pick the minimum value -
max
,maximum
- a comma separated list of values from which to pick the maximum value -
average
,avg
- a comma separated list of values to be taken the average of -
median
,med
- a comma separated list of values to be taken the median of -
stddev
,standard-deviation
,stdev
- a comma separated list of values to be taken the standard deviation of -
sqrt
,square-root
- a value to be taken the square root value of -
log
,lg
,logarithm
- a value to be taken the logarithm value of -
ln
,natural-logarithm
- a value to be taken the natural logarithm value of -
random
,rdm
- a random value between 0 and the number provided
Examples
-
\expression(5 * 8)
- 40 -
\expression(sum: 2, 5, 7)
- 14 -
\expression(count: 2, 5, 7)
- 3 -
\expression(min: 2, 5, 7)
- 2 -
\expression(max: 2, 5, 7)
- 7 -
\expression(average: 2, 5, 7)
- 4.666… -
\expression(median: 2, 5, 7)
- 5 -
\expression(stddev: 2, 5, 7)
- 2.0548… -
\expression(sqrt: 9)
- 3 -
\expression(log: 9)
- 0.9542… -
\expression(ln: 9)
- 2.197… -
\expression(random: 9)
- 7 -
\expression(random: 1.0)
- 0.598
\horizontal-rule
- inserts a horizontal rule (separator line) into the note text
- synonyms:
\rule
,\insert-horizontal-rule
,\hr
Examples
-
\rule
- inserts a horizontal rule
\table
- inserts a table into the note text
- synonyms:
\insert-table
,\tb
Parameters
-
none
- inserts a standard 2x2 table -
size
,dimensions
- the size of the desired table in columns x row format - Default -
columns
,c
- the number of columns the table should have -
rows
,r
- the number of rows the table should have
Examples
-
\table
- inserts a standard 2x2 table -
\table(3x4)
- inserts a table with 3 columns and 4 rows -
\table(columns: 4)
- inserts a table with 4 columns and 2 rows -
\table(rows: 4)
- inserts a table with 2 columns and 4 rows -
\table(r: 3, c: 4)
- inserts a table with 4 columns and 3 rows
\link
- inserts a web link or link to a project or note into the note text
- synonyms:
\url
,\insert-link
,\ref
,\href
,[[
- shorthands:
\project
,\note
Parameters
-
url
- the web url of the link to be inserted Default -
description
,dimensions
- the descriptive text of the link - Second Default -
project
,project-title
,to
- the name of the project the link should point to -
note
,note-title
- the title of the note the link should point to
Examples
-
\link(apple.com, apple website)
- inserts the text apple website with a link to apple.com -
\link(url: http://microsoft.com, description: microsoft)
- inserts the text microsoft with a link to microsoft.com -
\link(project: Developing Yak App, description: YakApp)
- inserts the text YakApp with a link to the project called Developing Yak App -
\link(note-title: Meeting the developers)
- inserts a link to the note with the title Meeting the developers
Tip: Instead of the using
\link
you can also use the shortcut[[
to insert a link to another project or note. You can even type[[recent
to see a list of all recently edited notes to link to. See it in action…
\summary
- inserts a summary into the note text at the location of the selection or cursor
- synonyms:
\summarize
,\insert-summary
Parameters
-
none
- inserts a summary of all unchecked list items -
list
- inserts a summary of the list items based on one of the following criteria: - Default-
checked
- all checked items -
unchecked
- all unchecked list items -
starred
- all paragraphs marked with a star -
tagged
- all paragraphs that contain a tag -
assigned
- all paragraphs that contain a person token
-
-
tag
- the name of the tag to be summarised -
person
- the name of the person to be summarised
Examples
-
\summary
- inserts a summary of all unchecked list items in the note -
\summary(list: checked)
- inserts a summary of all checked list items in the note -
\summary(starred)
- inserts a summary of all paragraphs marked with a star -
\summary(tag: urgent)
- inserts a summary of all paragraphs that have the tag namedurgent
-
\summary(tag: priority[1])
- inserts a summary of all paragraphs that have the tag namedpriority
with the value1
(note the use of square brackets instead of parentheses) -
\summary(person: tom)
- inserts a summary of all paragraphs that have the person namedtom
\attachment
- inserts an attachment into the note text, triggers the open file dialog to pick the file to attach
- synonyms:
\attach
,\file
,\insert-attachment
Parameters
-
none
- opens the file picker to select an attachment to be inserted -
description
,title
,name
- the text that should be used as the description of the file to be imported as attachment - Default
Examples
-
\attach
- opens the file picker -
\attach(My File)
- opens the file picker and after importing uses My File as the description of the attachment
\drawing
- inserts a drawing into the note text, shows the drawing canvas - iOS and iPadOS only
- synonyms:
\draw
,\insert-drawing
Parameters
-
none
- shows a new drawing canvas -
description
,title
,name
- the text that should be used as the description of the drawing - Default
Examples
-
\draw
- opens a new drawing canvas -
\draw(My Drawing)
- opens a new drawing canvas, using My Drawing as the description of the drawing
\template
- inserts the contents of a template into the note text at the insertion point or replacing the selection
- synonyms:
\insert-template
Parameters
-
name
- the name of the template to be used - Default, Required -
input
- the text that should be used to replace the input placeholder in the template
Examples
-
\template(Book Review)
- inserts the content of the Book Review template -
\template(Book Review, input: The title of this book)
- inserts the content of the Book Review template, replacing the\input
placeholder with the text The title of this book.
Paragraph Style
\body
- resets the paragraph style back to plain body text
- synonyms:
\p
Examples
-
\body
- resets all formatting so that when typing the paragraph style is set to body text
\heading
- sets the paragraph style to heading
- shorthands:
\heading1
,\h1
,\heading2
,\h2
,subheading
,\heading3
,\h3
,\heading4
,\h4
Parameters
-
level
- the heading level to use - Default
Examples
-
\heading
- changes the style to Heading, equivalent to\heading1
and\h1
-
\heading(level: 2)
- changes the style to subheading, equivalent to\heading2
,\h2
, and\subheading
-
\h3
- changes the style to minor heading
\preformatted
- sets the paragraph style back to pre-formatted text
- synonyms:
\pre
Examples
-
\pre
- changes the style to preformatted text, equivalent to\preformatted
\list
- sets the paragraph style to a dashes or bulleted (depending on your preference) unordered list
- synonyms:
\ul
,\dashed
,\bulleted
Examples
-
\list
- changes the style to a dashed list, equivalent to\ul
,
or tying a dash, asterix, or bullet followed by a space
\numbered
- sets the paragraph style to a numbered (ordered) list
- synonyms:
\ol
Parameters
-
none
- sets the style to a numbered list starting at 1 -
start
,from
- the starting number for the list
Examples
-
\numbered
- changes the style to a numbered list starting at 1,
equivalent to1.
followed by a space -
\numbered(start: 5)
- changes the style to a numbered list starting at 5,
equivalent to typing5.
followed by a space
\checklist
- sets the paragraph style to a checklist list
- synonyms:
\cl
Examples
-
\checklist
- changes the style to a checklist list, equivalent to\cl
List Actions
\check
- checks the checklist item at the current line
Parameters
-
none
- checks the checklist item at the current line -
all
- checks all checklist items in the list of which the current line makes part
Examples
-
\check
- checks the checklist item at the current line -
\check(all)
- checks all checklist items in the list
\check-all
- checks all checklist items in the list of which the current line makes part
- synonyms:
\all
Examples
-
\all
- checks all checklist items in the current list
\uncheck
- unchecks the checklist item at the current line
Parameters
-
none
- checks the checklist item at the current line -
all
- checks all checklist items in the list of which the current line makes part
Examples
-
\uncheck
- unchecks the checklist item at the current line -
\uncheck(all)
- unchecks all checklist items in the list
\reset
- unchecks all checklist items in the list of which the current line makes part
Examples
-
\reset
- unchecks all checklist items in the current list
\sort
- sorts the checklist that the current line makes part such that checked list items are moved to the bottom
Examples
-
\sort
- moves the checked items in the current list to the bottom
Formatting
\bold
- toggles bold formatting
- synonyms:
\b
Examples
-
\b
- toggles bold formatting, equivalent to\bold
\italic
- toggles italic formatting
- synonyms:
\i
Examples
-
\i
- toggles italic formatting, equivalent to\italic
\underline
- toggles underline formatting
- synonyms:
\u
Examples
-
\u
- toggles underline formatting, equivalent to\underline
\fixed-width
- toggles fixed-width formatting
- synonyms:
\fixed
Examples
-
\fixed
- toggles fixed-width formatting, equivalent to\fixed-width
\strikethrough
- toggles strikethrough formatting
- synonyms:
\strike
Examples
-
\strikethrough
- toggles strikethrough formatting, equivalent to\strike
\superscript
- toggles superscript formatting
- synonyms:
\sup
Examples
-
\sup
- toggles superscript formatting, equivalent to\superscript
\subscript
- toggles subscript formatting
- synonyms:
\sub
Examples
-
\sub
- toggles subscript formatting, equivalent to\subscript
\clear
- removes all formatting back to plain text
- synonyms:
\c
Examples
-
\clear
- resets all inline style formatting
Note Actions
\on-the-agenda
- marks the note as “On the Agenda”, or unmarks it if it’s currently marked as such
- synonyms:
\ota
,\ontheagenda
,\agenda
Examples
-
\ota
- marks the note as “On the Agenda”, equivalent to\on-the-agenda
\done
- marks the note as Done
Examples
-
\done
- marks the note as done
\undone
- unmarks the note as Done
Examples
-
\undone
- unmarks the note as done
\pin
- pins the note to the top of the project
Examples
-
\pin
- pins the note
\footnote
- make the note into a footnote that is pinned to the bottom of the project
Examples
-
\footnote
- turns the note into a footnote
\unpin
- makes the pinned note or footnote go back into a regular note
Examples
-
\unpin
- turns the pinned note or footnote back into a regular note
\assign-date
- assigns the provided date to the current note
- synonyms:
\assign
- shorthands:
\today
,\tomorrow
,\yesterday
,\monday
,\tuesday
,\wednesday
,\thursday
,\friday
,\saturday
,\sunday
Parameters
-
day
,on
,after
,before
,until
,from
,in
- a natural language representation of the day that should be assigned - Default -
date
,at
- a natural language representation of the date that should be assigned
Examples
-
\assign(17 oct 2022)
- assigns the note to 17 oct 2022 -
\assign(in: 3 weeks)
- assigns the note to 3 weeks after today -
\assign(tomorrow)
- assigns the note to tomorrow -
\assign(next Wednesday)
- assigns the note to next Wednesday -
\today
- assigns the note to today -
\friday
- assigns the note to coming Friday
\link-event
- links the provided event to the current note
- synonyms:
\event
Parameters
-
day
,on
,after
,before
,until
,from
,in
- a natural language representation of the day that should be searched for events - Default -
date
,at
- a natural language representation of the date that should be searched for events -
calendar
- the calendar that the search should be limited to
Examples
-
\event(17 oct 2022)
- shows calendar events on the 17th of October that the note can be linked to -
\event(calendar: Work, 17 oct 2022)
- shows events from the calendar Work on the 17th of October that the note can be linked to
\split
- splits the current note at the insertion point
- synonyms:
\new
Parameters
-
none
- splits the current note at the insertion point - Default -
title
- the title of the note that will be split off from the current note
Examples
-
\split
- splits the current note at the insertion point, equivalent to\new
-
\split(title: Part Two)
- splits the current note at the insertion point into a new note with the title Part Two
\duplicate
- duplicates the current note
Parameters
-
none
- duplicates the current note - Default -
title
- the title of the duplicated note
Examples
-
\duplicate
- splits the current note at the insertion point, equivalent to\new
-
\duplicate(title: Part Two)
- creates a duplicate with the title Part Two of the current note
\move
- moves the current note to a different project
Parameters
-
project
,project-title
,to
- the title of the project the note should move to - Default, Required
Examples
-
\move(to: Developing Yak App)
- moves the current note to the project Developing Yak App
\print
- prints the current note
Examples
-
\print
- prints the note
Escaping
Actions
If you don’t want an action to be executed and instead remain as text, you can prefix the action with an additional backslash character, like this: \\tag(name: Alex)
. The action will then not result in the creation of the tag Alex
but instead remain as \tag(name: Alex)
. Alternatively you can change the paragraph style to Preformatted or the inline style to fixed-width to prevent actions from being executed.
Parameters
A colon and comma have a special meaning with the parameter lists of actions, if the argument of a parameter needs to contain one of these characters you can escape them using a backslash character.
For example, without escaping \date(format: YYYY, dd-MM)
is incorrectly parsed and only shows the year 2022
, instead you can use \date(format: YYYY\, dd-MM)
to show 2022, 07-04
Similarly, without escaping \split(Newsflash: ABC)
would not be correctly parsed while \split(Newsflash\: ABC)
does.
Localization
Note that all actions and parameters should be properly localized according to the language of the app. You can use in that case either the above English variant or the translated variants. Note that although the actions might contain accents and/or capitals, it’s not needed to type these, for example in the French version of Agenda, you can get a numbered list by typing any of the following:
\numérotée
\numerotee
\Numérotée
\numbered
Speaking of Localization: want to help localize Agenda to your favorite language?, for instance to Korean or Japanese, let us know or leave a message at the page for your language…