aki
The board

Spaces and panes

A space keeps part of the board. Its panes are filtered, grouped and sorted views of it, tiled in a layout.

How spaces are made

On a first run aki makes All, plus one space per source when there are several. From then on spaces are what you make them: every change in the board is saved at once to ~/.config/aki/spaces.toml, which you can also edit by hand.

A space has:

  • a scope: a filter saying what belongs to it at all;
  • a layout: how its panes are tiled;
  • one or more panes, each with its own filter, grouping and order.

See what a space holds

I in the board explains the shown space: its scope, its layout, its panes, and the repositories and projects it holds right now with their counts.

aki spaces
output
2 Work
    scope   source:gitlab,jira
    layout  master
    pane 1  To do · filter: is:todo · group: repo · sort: waiting ↓
    pane 2  Waiting · filter: is:waiting · group: repo · sort: urgency ↓
    holds   gitlab · acme/api  (7 to do, 2 waiting)
            gitlab · acme/web  (2 to do, 3 waiting)

Work on spaces

KeyDoes
1-9, , .Show a space, or click it in the top bar.
NNew space.
SIts scope. source:github keeps one source, repo:web one repository, -repo:legacy leaves one out.
R XRename it, remove it.
tIts layout: columns → rows → master → grid.
< >Move it among the others.

Work on panes

KeyDoes
/Filter the pane, applied as you type.
bIts side: to do → waiting → both.
gIts grouping: none → repo → kind → source → person → role.
s vIts order, and the reverse.
n xNew pane beside this one, with the same view; close it.
Shift+← →Move it among the others.
m then 1-9Send it to another space.
eName it.
z dZoom it; show or hide the detail pane.

Layouts

LayoutTiles
columnsSide by side.
rowsOne above the other.
masterThe first pane large on the left, the others stacked on the right.
gridAs square a grid as the count allows.

The file

~/.config/aki/spaces.toml
[[spaces]]
name = "Work"
scope = "source:gitlab,jira"
layout = "master"

[[spaces.panes]]
filter = "is:todo"
group = "repo"
sort = "waiting"

[[spaces.panes]]
filter = "is:waiting"
group = "repo"
sort = "urgency"

[[spaces.panes]]
title = "My drafts"
filter = "is:draft role:author"
group = "repo"
sort = "urgency"
KeyValues
scope, filterA filter. Empty: everything.
layoutcolumns, rows, master, grid
groupnone, repo, kind, source, person, role
sorturgency, rule, waiting, updated, created; reverse = true flips it
titleThe pane's name. Without it, the pane is named after its filter.

A pane for your drafts

To work on your drafts in their own pane and keep them out of To do:

~/.config/aki/config.toml
[drafts]
mine = "apart"

Then, in the board: n for a new pane, type is:draft role:author, Enter, and e to name it. Drafts kept apart show only in panes that ask for is:draft; the top bar says how many there are.

Start over

aki spaces reset

This writes the starting spaces again from your sources. The previous file is kept beside it as spaces.toml.bak.