Skip to content

Define the minimum supported terminal size and the behaviour below it #14

Description

@sinhaparth5

"Minimum terminal size to support, and behavior below it" is an open question in progress.md and
has never been answered. gittop currently has responsive breakpoints but no defined floor.

TabBar sheds width in tiers and the ladder is documented down to 69 columns, with the rule that
no tier may drop a tab — a clipped bar hides that those views exist at all, and the digit on a
tab is the key that reaches it. That rule is what makes the question answerable: below some width,
ten tabs cannot be drawn under any tiering, and something has to give.

What is undefined is what happens then, and what happens vertically. A panel with a border and a
title needs a minimum height before its content has anywhere to go, and nothing currently says what
gittop does in an 80x10 window, or in the two-line strip a user gets by dragging a split too far.

What this needs

  • Pick a supported minimum and write it down. 80x24 is the conventional floor and is what the tier
    ladder is already implicitly designed around.
  • Define the behaviour below it. The useful options are a legible "terminal too small" card giving
    the current and required size, or degrading to a single-panel view with the tab bar reduced to a
    digit. Silently clipping is the one thing to avoid, since FTXUI clips at the cell and says
    nothing — the failure mode the measurement rules exist to prevent everywhere else.
  • Check the overlays specifically. The sign-in, passphrase, commit and confirm panes are the things
    most likely to become unusable first, and a passphrase prompt that cannot be read or dismissed is
    worse than a broken layout.
  • Whatever the answer is, TabBar's tier comment should record it, since that is where the next
    person will look.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requested

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions