Search language
One small language filters tasks everywhere: the search field of the web UI, a scope’s filter and a perspective. It is made of free text and chips. The words of the language are German for now; English alternatives are planned.
On the command line, samu list --search <words> takes free text only;
chips go into scopes (samu scope filter) and perspectives
(samu perspective add), and samu list --perspective <name> shows one.
Free text
Every word that is not a chip must appear in the title, the note or the id. The last eight characters of an id, as the command line prints it, find their task.
Chips
In the web a word becomes a chip once you take it from the list under the field (↑ ↓, Tab or Enter) or finish it with a space. With an empty field the list shows the kinds.
| Chip | Finds tasks |
|---|---|
#Website, #Inbox | in the project, or in the inbox |
@Place, @Place/Office | with the tag or a tag below it |
ordner:Work | in projects of the folder and its subfolders |
zustand:"In progress" | in that state of their workflow |
fällig: (due), geplant: (planned), start: (defer) + range | with that date in the range (see below) |
erledigt: (completed), erstellt: (created), geändert: (modified) + range | completed, created or modified in the range |
ist: + word | markiert flagged, verfügbar available, wartet waiting, offen open, erledigt completed, verworfen dropped, gruppe action group, notiz has a note, wiederholt repeats, geclockt has clocks, blocker another open task waits for it, blockiert waits for an open blocker (its own or its project’s) |
~<15m, ~>=1h, ~30m, ~mit, ~ohne | by estimate (<, <=, >, >=, equal; with or without one) |
prio:a, prio:b, prio:c, prio:mit, prio:ohne (or prio:-) | by priority |
prop:jira, prop:jira=ABC-1 | with the property, own or inherited; with a value, ignoring case (web only for now; the command line does not take it yet) |
Ranges
| Range | Means |
|---|---|
heute, morgen, gestern | today, tomorrow, yesterday |
woche | today up to Sunday |
7t, 30t | today and the next 7 or 30 days |
-7t, -30t | the last 7 or 30 days up to today |
überfällig | overdue |
mit, ohne | has the date, has none |
2026-11-01 | that day |
2026-11-01..2026-11-30, ..2026-11-30, 2026-11-01.. | a span, open at one end if you like |
Days are counted in the account’s time zone.
Combining
- Chips of the same kind are alternatives:
@phone @computerfinds either. - Chips of different kinds must all hold:
@phone fällig:woche. -before a chip negates it:-@Waiting. In the web a click on a chip toggles the negation, × removes it, Backspace in an empty field removes the last one, Escape clears everything.
Asking for completed tasks (ist:erledigt, erledigt:…) widens the view
to “all”; asking for waiting tasks (ist:wartet, start:…) widens
“available” to “remaining”.
Arranging
The web’s “Anordnen” button groups (by project, folder, tag, state, priority, date or not at all) and sorts (by own order, due, planned, defer, title, created, modified, estimate or priority, ascending or descending), with a second key for ties. The choice is kept per view in the browser. A perspective stores the search together with its filter, arrangement and list or board.
samu perspective add "Quick calls" '@phone ~<15m'
samu perspective arrange "Quick calls" --help # grouping and sorting
samu list --perspective "Quick calls"