6

I am using Windows Terminal (1.23.13503.0) with Command Prompt as the default profile. I have others like PowerShell, Ubuntu 24.04.01 LTS.

This is not a scrollback or history issue, if I understand those terms correctly. Scrolling up works fine and I can see all previous output.

My problem is specifically at the bottom of the screen: in classic Command Prompt (conhost), the screen buffer can be taller than the window, so I can scroll past the last line and have empty space below the cursor. This gives visual breathing room while typing near the bottom. And I don't feel claustrophobic.

In Windows Terminal, the cursor is always glued to the bottom edge. Until I actually print new lines, there is no empty space below, and typing feels visually cramped.

I am NOT asking for:

  • More scrollback.
  • History retention.
  • Switching shells.
  • Workarounds like pressing Enter.

I want to know:

  1. Is there any setting (JSON or otherwise) that allows scrolling past the bottom / adding bottom padding / virtual empty lines below the cursor?
  2. If not, is this a known design limitation of Windows Terminal?

Basically, does Windows Terminal support "scroll past bottom" like classic cmd.exe. Or is this behavior intentionally unsupported?

New contributor
FKcosθ is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct.
0

3 Answers 3

13

Set your shell prompt to a sequence that outputs multiple lines, then moves the cursor back up the same amount of lines. Both Conhost and Windows Terminal support the 'ANSI' or 'ECMA' terminal control codes now.

set PROMPT=$_$_$_$_$_$e[5A$P$G

$_ outputs a newline, $e[5A moves the cursor five lines up.

The Bash equivalent is PS1='\n\n\n\n\n\e[5A\u@\h \w\$ '.

does Windows Terminal support "scroll past bottom" like classic [conhost]

I couldn't find any setting to allow that.

If not, is this a known design limitation of Windows Terminal?

Conhost and the Windows Console API was designed for a fixed-size 'display' buffer. If it's 300 lines tall then it's 300 lines tall (meaning that – from what I remember – you stop being able to scroll past the bottom if you fill up those 300 lines).

Windows Terminal was created as part of Microsoft's effort to switch away from the Console API and towards the Unix-style "tty" API. Due to their roots in a paper-based teletype (versus a fixed-size CRT), Unix-style terminals are more stream-oriented, and the dynamically-growing scrollback in terminal emulators kind of reflects that. Most terminal emulators don't support forward scrolling (unless they implement 'jump scroll').

4

Microsoft Terminal does not support scrolling down past the last line. Multiple sources online report this is the case, and Microsoft Support Forum staff advise people asking this question to submit a Feature Request, or upvote existing Feature Requests, so the dev teams can be made aware this feature is wanted.

0
2

This is an open feature request and you should consider voting for it to increase visibility (but not 'bump' it with comments unless you have meaningful information to add).

Notably, the request has been open for five years now, and as of Jan 2024 the last update was:

I (honestly) don't think we'll be able to get to this for a very long time.

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.