Add quick-add mode for categories

N (from anywhere) or n (in Category panel) opens an inline prompt
to add categories one after another without typing :add-cat each time.

- Yellow border + prompt distinguishes it from item-add (green)
- Enter / Tab adds the category and clears the buffer, staying open
- Esc returns to the category list
- Cursor automatically moves to the newly added category

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Ed L
2026-03-21 23:03:45 -07:00
parent 4f322e53cd
commit c9d1313072
5 changed files with 311 additions and 19 deletions

227
whatever.improv Normal file
View File

@ -0,0 +1,227 @@
{
"name": "New Model",
"categories": {
"Type": {
"id": 0,
"name": "Type",
"items": {
"Food": {
"id": 0,
"name": "Food",
"group": null
},
"Clothing": {
"id": 1,
"name": "Clothing",
"group": null
},
"Gas": {
"id": 2,
"name": "Gas",
"group": null
},
"Medical": {
"id": 3,
"name": "Medical",
"group": null
}
},
"groups": [],
"next_item_id": 4
},
"Month": {
"id": 1,
"name": "Month",
"items": {
"Janury": {
"id": 0,
"name": "Janury",
"group": null
},
"February": {
"id": 1,
"name": "February",
"group": null
},
"March": {
"id": 2,
"name": "March",
"group": null
}
},
"groups": [],
"next_item_id": 3
},
"Recipient": {
"id": 2,
"name": "Recipient",
"items": {
"Bob": {
"id": 0,
"name": "Bob",
"group": null
},
"Joe": {
"id": 1,
"name": "Joe",
"group": null
},
"Mary": {
"id": 2,
"name": "Mary",
"group": null
},
"Jane": {
"id": 3,
"name": "Jane",
"group": null
},
"Will": {
"id": 4,
"name": "Will",
"group": null
}
},
"groups": [],
"next_item_id": 5
},
"Payer": {
"id": 3,
"name": "Payer",
"items": {
"Bernadette": {
"id": 0,
"name": "Bernadette",
"group": null
},
"Ed": {
"id": 1,
"name": "Ed",
"group": null
}
},
"groups": [],
"next_item_id": 2
}
},
"data": [
[
[
[
"Month",
"Janury"
],
[
"Payer",
"Bernadette"
],
[
"Recipient",
"Bob"
],
[
"Type",
"Clothing"
]
],
{
"Number": 3.0
}
],
[
[
[
"Month",
"Janury"
],
[
"Payer",
"Bernadette"
],
[
"Recipient",
"Bob"
],
[
"Type",
"Food"
]
],
{
"Number": 12.0
}
],
[
[
[
"Month",
"Janury"
],
[
"Payer",
"Bernadette"
],
[
"Recipient",
"Bob"
],
[
"Type",
"Gas"
]
],
{
"Number": 4.0
}
],
[
[
[
"Month",
"Janury"
],
[
"Payer",
"Bernadette"
],
[
"Recipient",
"Bob"
],
[
"Type",
"Medical"
]
],
{
"Number": 5.0
}
]
],
"formulas": [],
"views": {
"Default": {
"name": "Default",
"category_axes": {
"Type": "Row",
"Month": "Column",
"Recipient": "Page",
"Payer": "Page"
},
"page_selections": {
"Recipient": "Bob"
},
"hidden_items": {},
"collapsed_groups": {},
"number_format": ",.0",
"row_offset": 0,
"col_offset": 0,
"selected": [
1,
1
]
}
},
"active_view": "Default",
"next_category_id": 4
}