Skip to content

scrollback-limit: fix internal default and surface config #1922

Description

@austinywang

Problem

Users report that scrollback feels limited — scrolling up in a terminal surface stops earlier than expected.

Current state

  • The Ghostty engine defaults to 10MB (scrollback-limit = 10_000_000) and reads config from ~/.config/ghostty/config and other standard locations.
  • cmux's GhosttyConfig.scrollbackLimit in Sources/GhosttyConfig.swift:18 defaults to 10000 (10KB), but this value is only used for the debug scrollback tab feature — it does NOT override the Ghostty engine's actual terminal scrollback.
  • There is no cmux-specific way to configure or surface the scrollback limit.

Issues

  1. Misleading internal default: GhosttyConfig.scrollbackLimit = 10000 doesn't match Ghostty's actual 10MB default. While it only affects the debug feature today, it's confusing and could cause bugs if the value is used elsewhere in the future.
  2. No discoverability: Users have no way to know scrollback is configurable, or where to set it. They have to know about Ghostty config files.
  3. No cmux-specific config: If a user wants different scrollback for cmux vs Ghostty, there's no way to do that.

Proposed changes

  1. Fix GhosttyConfig.scrollbackLimit default to 10_000_000 to match Ghostty's actual default.
  2. Consider surfacing scrollback-limit in cmux's own config path (~/Library/Application Support/com.cmuxterm.app/config) or a future settings UI.
  3. Document in the README or help text that scrollback is configurable via scrollback-limit in Ghostty config.

Workaround

Users can increase scrollback today by adding to ~/.config/ghostty/config:

scrollback-limit = 50000000

The value is in bytes (50MB above). Only affects new terminal surfaces.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions