micasa

Navigation

micasa uses vim-style modal keybindings. There are three modes: Nav, Edit, and Form.

Nav mode is the default. The status bar shows a blue NAV badge. You have full table navigation:

KeyAction
j / kMove row down / up
h / lMove column left / right (skips hidden columns)
^ / $Jump to first / last column
g / GJump to first / last row
d / uHalf-page down / up
b / fPrevious / next tab
enterDrill into detail, follow link, or preview
s / SSort column / clear sorts
/Jump to column (fuzzy find)
c / CHide column / show all
n / NPin cell value / toggle filter
ctrl+nClear all pins and filter
tabToggle house profile
DToggle dashboard
yCopy cell value to clipboard
iEnter Edit mode
@Open LLM chat
?Help overlay

Clipboard (yank)#

Press y to copy the focused cell’s value to the system clipboard. The status bar briefly shows the copied value. Money values are copied without the currency symbol.

micasa uses OSC 52 to set the clipboard directly through the terminal. This works over SSH and doesn’t require external tools like xclip or xsel. Most modern terminals support it, but some need explicit configuration:

TerminalConfiguration
tmuxset -g set-clipboard on in ~/.tmux.conf
GNU ScreenNot supported (Screen does not forward OSC 52)
AlacrittyEnabled by default
iTerm2Preferences → General → Selection → enable “Applications in terminal may access clipboard”
kittyEnabled by default
WezTermEnabled by default
Windows TerminalEnabled by default
footEnabled by default
GNOME TerminalSupported since 3.46

If your terminal doesn’t support OSC 52, the keypress is silently ignored — nothing breaks, you just don’t get clipboard content.

Edit mode#

Press i from Nav mode to enter Edit mode. The status bar shows an orange EDIT badge. Navigation still works (j/k/h/l/g/G), but d is rebound from page navigation to delete:

KeyAction
aAdd new entry
eEdit cell or full row
EOpen full edit form
dDelete or restore item
xToggle show deleted items
pEdit house profile
escReturn to Nav mode

Tip: ctrl+d still works for half-page down in Edit mode.

Form mode#

When you add or edit an entry, micasa opens a form. Use tab / shift+tab to move between fields, type to fill them in.

KeyAction
ctrl+sSave and close
escCancel
1-9Jump to Nth option in select fields

The form shows a dirty indicator when you’ve changed something. After saving or canceling, you return to whichever mode you were in before (Nav or Edit).

Tabs#

The main data lives in six tabs: Projects, Quotes, Maintenance, Appliances, Vendors, and Docs. Use b / f to cycle between them. The active tab is highlighted in the tab bar.

Detail views#

Some columns are drill columns (marked in the header) – pressing enter on them opens a sub-table. For example:

  • Log column on the Maintenance tab opens the service log for that item
  • Maint column on the Appliances tab opens maintenance items linked to that appliance
  • Docs column on the Projects or Appliances tab opens linked documents

A breadcrumb bar replaces the tab bar while in a detail view (e.g., Maintenance > HVAC filter replacement). Press esc to close the detail view and return to the parent tab.

Horizontal scrolling#

When a table has more columns than fit on screen, it scrolls horizontally as you move with h/l or ^/$. Scroll indicators appear in the column headers: a on the leftmost header when columns are off-screen to the left, and a on the rightmost header when columns are off-screen to the right.

Some columns reference entities in other tabs. When at least one row in the column has a link, a arrow appears in the column header. When the cursor is on a linked cell, the status bar shows follow →. Press enter to jump to the referenced row in the target tab. If the cell has no link (e.g. “Self” in the Performed By column), the status bar shows a brief message instead.

Examples:

  • Quotes Project column links to the Projects tab
  • Quotes Vendor column links to the Vendors tab
  • Maintenance Appliance column links to the Appliances tab
  • Service log Performed By column links to the Vendors tab