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.