board: a card turns over to a checklist, labels and a description

Enter on a card floats a sheet over the board: its labels, a markdown
description written in the vim editor (:w writes it to the card), and a
checklist walked with j/k, ticked with Space, grown with o. Labels take
their colour from their name. A repeating card comes back with its
checklist reopened.

Code in the editor and in rendered fences is coloured from nvim's
yorha.lua, one class per highlight group, for every language
@codemirror/language-data knows; the languages load on first use.
This commit is contained in:
nvrl committed 2026-10-21 23:53:24 +02:00
1 parent 1fd1aa1eb7
commit 3c4c383f72
24 files changed
+1274 -127

No files matched your search

+35 -2
View File
@@ -57,7 +57,7 @@ a week fold away until `z` shows them.
| `H` / `L` | move the card to the list on the left / right |
| `Space` | into the done list, or back out to the inbox |
| `o`, `c` | a new card on this list |
| `Enter` | the card's notes |
| `Enter` | turn the card over: labels, description, checklist |
| `D` | due date |
| `R` | rename the card |
| `z` | show done cards older than a week |
@@ -65,6 +65,39 @@ a week fold away until `z` shows them.
| `x`, `dd` | delete the card |
| `q`, `Esc` | leave the special workspace |
### The back of a card
`Enter` on a card turns it over: a sheet floats over the board with its
labels, its description and its checklist. The card stays the one under the
board's cursor, so `D`, `R`, `H` and `L` act on it as they do on the board.
| key | what it does |
| --- | --- |
| `j` / `k`, `gg` / `G` | down / up the checklist, its first / last step |
| `Space`, `x` | tick the step, or untick it |
| `o` | a new step below the cursor (`:task <text>`) |
| `r` | reword the step (`:task! <text>`) |
| `J` / `K` | move the step down / up |
| `dd` | drop the step |
| `e`, `i`, `Enter` | write the description |
| `a` | put a label on, or take it off (`:label <name>`) |
| `gf` | the card's notes, below |
| `q`, `Esc` | back to the board |
The description is markdown, written in the same editor as a document, vim
and all: `:w` writes it to the card, `:q` or `Esc` in normal mode leaves, and
`:q!` throws away what was not written. A fenced block in a language is
coloured the way nvim colours it, written and read.
Labels are lower case, and each name keeps its colour on every card and every
board, without anything to set: the colour comes from the name. `Tab` on
`:label` offers the ones the board already uses. The board shows a card's
labels over its title, and `☑ 2/5` and `≡` under it when it has a checklist and
a description.
A repeating card comes back with the same labels and the same checklist, every
step open again.
### Capturing a card
`c` anywhere outside the special workspace opens `:card ` on the command line. The card goes
@@ -73,7 +106,7 @@ you stay where you were. From outside the browser, see [Capture](Capture.md).
### Notes
`Enter` on a card opens its notes: a document named after the card, made in the
`gf` on the back of a card opens its notes: a document named after the card, made in the
root of the space the first time. Closing it goes back to the board, on the
same card. `:card!` while reading a document makes a card that points at it.
+5 -2
View File
@@ -76,7 +76,7 @@ The first list is the inbox, the last list is done.
| `J / K` | move the card down / up its list |
| `H / L` | move the card to the list left / right |
| `Space` | into the done list, or back out to the inbox |
| `Enter` | the card's notes — a document, made on first use; q comes back |
| `Enter` | turn the card over: its labels, description and checklist |
| `o · c` | new card on this list |
| `D` | due date: fri, tm, +3d, 10-31 … |
| `R` | rename the card, or the list when it is empty |
@@ -131,6 +131,9 @@ do: `:w!`, `:space! <name>`, `:import!`.
| `:due <when\|->` | due date of the card — on the board, or highlighted in the agenda: today, tm, fri, +3d, +2w, 10-31, 2026-10-31 — - clears |
| `:repeat <rule\|->` | once the card is done, a copy comes back in the inbox: daily, weekly, monthly, yearly, +3d, +2w, +6m — - stops it |
| `:done` | move the selected card into the done list, or back out to the inbox |
| `:task, :step <text>` | add a step to the open card's checklist, below the cursor |
| `:task!` | reword the step under the cursor |
| `:label <name>` | put a label on the card, or take it off when it has it — each name keeps its colour everywhere |
| `:list <name>` | add a column to the board |
| `:list!` | delete the column under the cursor and every card on it |
| `:agenda, :ag` | what is late, due this week, or in hand — across every board |
@@ -172,7 +175,7 @@ do: `:w!`, `:space! <name>`, `:import!`.
| command | what it does |
| --- | --- |
| `:write, :w` | save the open document |
| `:write, :w` | save the open document — or the card's description being written |
| `:write!` | save even over a newer version saved somewhere else since this one was opened |
| `:wq, :x` | save and leave insert/editor mode |
| `:wq!` | save over a newer version, as :w! does, and leave the editor |