Skip to content

Releases: mtolhuys/fathom

Fathom 0.3.0

Choose a tag to compare

@mtolhuys mtolhuys released this 01 Oct 22:24

Fathom: Alt+Tab that dives through time

Fathom draws your wallpaper behind the field, follows Omarchy's look (square corners on a stock install), reads a [fathom] section in shell.toml and knows where Alt is under every XKB option, with work from @WhoIsCalebBrown, @caniswim, @CJKaufman and @nixfred:

  • Your Omarchy wallpaper sits behind the field, under the theme's veil
    (a little thinner than before, still held to the same contrast floors),
    and a new wallpaper shows the next time the field opens. It loads only
    while the field is shown, so a quick Alt+Tab decodes nothing, and
    fades in once it is ready. By WhoIsCalebBrown (#8).
  • Corners and borders follow Omarchy's appearance: the corner radius is
    Hyprland's decoration:rounding (square on a default Omarchy), and idle
    borders take the shell's [controls] border width. A [fathom] section
    in ~/.config/omarchy/shell.toml (corner-radius, border-width)
    overrides both for Fathom alone and updates live. The radius sets the
    front card's corner and the rest keeps Fathom's proportions to it; the
    selection stays heavier than the idle border at any width. By caniswim
    (#7).
  • show-scratchpads = false in the same [fathom] section leaves
    scratchpads out of the Deep, live; the map still shows them, and Alt+Tab
    passes over a hidden one. By CJKaufman (#5).
  • omarchy-shell fathom state says whether the hold-mode watchdog is
    running (watchdog), so a switch stuck in hold mode, or one that runs
    unwatched, shows from the shell. By nixfred (#3).
  • Letting go of Alt follows every XKB option that moves Alt or takes it
    off a key, 26 of them, among them compose:ralt, grp:toggle and
    lv3:lalt_switch, and any two together come out as XKB has them,
    whatever order they are written in. altwin:ctrl_alt_win puts Alt on
    the Windows keys, not on Ctrl as Fathom had it. The Lua tests check every
    option and every pair against xkbcli. By nixfred (#4).
  • Installing takes two steps, and the README says so right under the
    command: --enable loads the overlay but leaves Alt+Tab where it was
    until Fathom's block is in bindings.lua. Another switcher (altswitch,
    Woogy7's Workspace Switcher) can stay, with Fathom's block after it, and
    has Alt+Tab back once Fathom is disabled or removed. Troubleshooting
    starts with this case, and load-bindings --check says what is missing
    when Fathom is enabled but does not hold Alt+Tab. Reported by
    mightywomble (#6).

In omakit's disposable Omarchy 4.0.4 guest, with real keys, on 0.3.0: the whole scenario suite, two options that move Alt in both orders, the watchdog in the state, and load-bindings --check right after --enable.

Update:

omarchy plugin update io.github.mtolhuys.fathom

New here? Install in two steps:

  1. omarchy plugin add https://github.com/mtolhuys/fathom --enable loads the overlay.
  2. The Alt+Tab block from the README's "Install", at the end of ~/.config/hypr/bindings.lua, gives Alt+Tab to Fathom.

fathom-demo.gif is the same demo as a GIF, to share.

Fathom 0.2.2

Choose a tag to compare

@mtolhuys mtolhuys released this 26 Sep 17:55

Fathom: Alt+Tab that dives through time

Two fixes, both about strings other programs choose:

  • Window titles, app names, workspace names and the filter render as plain
    text, like every other label in the overlay: markup in a title (an image
    from a web address, say) shows as typed and loads nothing. Asked for in the
    marketplace review. tests/static.test.sh fails on any Text without
    textFormat: Text.PlainText.
  • The icon lookup never turns a window's app id or class into a file path:
    the window chooses those, so a class like /etc/passwd gets the lettered
    tile, and only a desktop entry's own Icon may name a file.

In omakit's disposable Omarchy 4.0.4 guest: a window titled <b>x</b><img src="http://127.0.0.1:8099/a.png"> made 0.2.1 request that image from a listener at that address, and a window that named a file as its app id had the shell open that file as its icon. 0.2.2 shows the title as typed, in the card, the caption and the map, opens only a desktop entry's own icon path, and requests nothing.

Update:

omarchy plugin update io.github.mtolhuys.fathom

New here? Install:

omarchy plugin add https://github.com/mtolhuys/fathom --enable

Then add the Alt+Tab block from the README to ~/.config/hypr/bindings.lua.

fathom-demo.gif is the same demo as a GIF, to share.

Fathom 0.2.1

Choose a tag to compare

@mtolhuys mtolhuys released this 24 Sep 23:58

Fathom: Alt+Tab that dives through time

Two fixes from @nixfred, and main stays frozen while the marketplace reviews.

  • The Alt release follows the keyboard in use. kb_options set per keyboard (hl.device), which the global setting does not show, are followed too: the key held as the chord fires is the one whose release commits, whatever that keyboard's options say. (#1)
  • A sideways fling crosses as many workspaces as it is worth, the way a dive of several windows already did, and a chord always arms the watchdog when it switches to hold mode, also over a filter that matches nothing. (#2)
  • Main stays frozen while a marketplace submission or update request is open. bin/submission-guard, installed as the pre-push hook, refuses a push to main while one is open; bash bin/revalidate renders the submission's issue body again by omakit's retry edit protocol.

Both fixes were run in omakit's disposable Omarchy 4.0.4 guest with real keys, on 0.2.0 and 0.2.1: the bugs reproduce on 0.2.0 and are gone here. The README now says what Fathom weighs there: no measurable CPU and no child process.

Update:

omarchy plugin update io.github.mtolhuys.fathom

New here? Install:

omarchy plugin add https://github.com/mtolhuys/fathom --enable

Then add the Alt+Tab block from the README to ~/.config/hypr/bindings.lua.

fathom-demo.gif is the same demo as a GIF, to share.

Fathom 0.2.0

Choose a tag to compare

@mtolhuys mtolhuys released this 23 Sep 22:31

Fathom: Alt+Tab that dives through time

Fathom's first release: a depth-based Alt+Tab for Omarchy Quattro.

Fathom demo

  • The Deep. Every window is a card, stepping back by how long ago you used it. Hold Alt, dive with Tab, the arrows or the wheel; release to focus.
  • The map. Every workspace at a glance, scratchpads included, each window at its real position with its last frame and title.
  • The sounding line. A depth gauge in fathoms, from "now" to two hours down. Click or drag it to pick a window by time.
  • Any theme, light or dark. Every color comes from your Omarchy theme and follows it live; text holds its contrast in all 22 themes Omarchy ships.
  • Any keyboard. The Alt release follows XKB options that move Alt, ignores AltGr, and can never leave your shortcuts held.
  • Light. Captures only while open and only near the front; the map reuses them. No program, no daemon, no files.

Fathom in four Omarchy themes

Install:

omarchy plugin add https://github.com/mtolhuys/fathom --enable

Then add the Alt+Tab block from the README to ~/.config/hypr/bindings.lua.

fathom-demo.gif is the same demo as a GIF, to share.