feat(tui): add raw scrollback mode#20819
Merged
fcoury-oai merged 1 commit intomainfrom May 5, 2026
Merged
Conversation
This was referenced May 3, 2026
c1c8a22 to
860bf62
Compare
Contributor
|
Tested raw scrollback mode by toggling it on and off during streaming, resizing the terminal including narrow widths, and viewing markdown-heavy output with lists and paragraphs. |
canvrno-oai
approved these changes
May 5, 2026
pakrym-oai
approved these changes
May 5, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
Granular copy is particularly difficult with the current output. Part of it was solved with the introduction of the
/copycommand but when you only need to copy parts of a response, you still encounter some issues:rawmode_75.mp4
Solution
Now that we own the scrollback and we re-create it when we resize, we have the opportunity of toggling between the raw text and the rich text we see today.
tui.raw_output_mode,/raw [on|off], and the configurabletui.keymap.global.toggle_raw_outputaction.alt-rby default, with the keybinding path toggling silently while/rawcontinues to emit confirmation messages.Related Issues
Likely addressed by raw mode:
Partially or conditionally addressed:
Validation
just write-config-schemajust fmtcargo test -p codex-configcargo test -p codex-tuijust fix -p codex-tuijust argument-comment-lintcargo test -p codex-tui raw_output_mode_can_change_without_inserting_notice -- --nocapturecargo test -p codex-tui raw_slash_command_toggles_and_accepts_on_off_args -- --nocapturecargo test -p codex-tui raw_output_toggle -- --nocapturegit diff --checkcargo insta pending-snapshots