-
Notifications
You must be signed in to change notification settings - Fork 8.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Terminal desperately needs a horizontal scrollbar (similar to Command Prompt) #1860
Comments
I mean, that seems a little strong. One of the biggest requests we had for Windows 10 was to add support for wrapping to the traditional/legacy console! |
That's because I feel strongly about it :) I absolutely hate line-wrapped console output... always have. |
Maybe make it a config, "text-wrap": false when Edit: I didn't read the original post correctly, so proposed config* |
The traditional Unix terminal emulation (using ANSI escape sequences) is pretty much incompatible with this idea. See e.g. https://bugzilla.gnome.org/show_bug.cgi?id=769440. |
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
@AlwaysHC Could you elaborate more on why you need this feature? I don't think I really understand the use case. Maybe there's some way to make your workflow work in the Windows Terminal without a horizontal scrollbar? |
@zadjii-msft Because wrapped lines are obnoxiously more difficult to visually parse. |
tail -f /var/log/messages |
I'm in agreement that we need this feature. I use a lot of interactive workflows that display asciified tables in the terminal (which are often several screen-lengths long) and having them be wrapped is a dealbreaker since it turns them into illegible gibberish. Likewise with several other forms of console output where the formatting across lines is important. Please implement horizontal scrolling as an option because currently I think this terminal will be useless to a lot of users with similar requirements. |
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
I am copying the question which I asked here: #6730 Why is Windows terminal unable to load a wide window (of fixed width) behind the scenes with only a part of the window visible to the user and a horizontal scrollbar to move that window from side to side? The shell itself may not even be aware of me staring at it throw a smaller size window. In other words all this thing could be implemented on the UI part only by letting the shell think that I am on a wider window than it actually is. |
This comment was marked as off-topic.
This comment was marked as off-topic.
If we make any changes here, they are going to be in line with other terminal emulators that have established precedent: the typical options are wrap or truncate. Would truncate be more to your liking? |
The behavior ought to be exactly the same as Command Prompt has been for ages: word-wrap, but only beyond a buffer width that the user can configure to be much wider than the actual window width. For example, allow me to set the buffer width to 9999 characters, so that word wrapping does not occur until the 10000th character on each line (which should effectively never wrap).
|
I think the confusion here stems from the fact that some people were expecting a kind of "infinite" width, that would expand as more content was written out. I don't think that is feasible for a terminal. However, a wide (but fixed size) buffer within a smaller viewport is a different matter. As had been mentioned, we already support that in the conhost console. And it's worth mentioning that some of the DEC terminals supported a similar concept, so it's not without precedent. That said, for many of the use cases mentioned, you can probably get by with piping your output through |
This comment was marked as off-topic.
This comment was marked as off-topic.
This commit fixes a number of issues around horizontal scrolling. DxEngine only had one bug, where the clip rect would cause any content outside of the actual viewport to be invisible. AtlasEngine had more bugs, mostly around the conversion from textbuffer-relative coordinates to viewport-relative coordinates, since AtlasEngine stores things like the cursor position, attributes, etc., relative to the viewport. It also renames `cellCount` to `viewportCellCount`, because I realized that it might have to deal with a `textBufferCellCount` or similar in the future. I hope that the new name is more descriptive of what it refers to. Future improvements to AtlasEngine in particular would be to not copy the entire `Settings` struct every time the horizontal scroll offset changes, and to trim trailing whitespace before shaping text. This is in preparation for #1860 ## Validation Steps Performed * Patch `RenderingTests` to run in the main (and not alt) buffer * Horizontal scrolling of line renditions and attributes works ✅ * Selection retains its position (mostly) ✅ (cherry picked from commit 89c39b0) Service-Card-Id: 90625739 Service-Version: 1.18
The problem seems resolved. But I don't know how to configure it on my desktop. Would you guys kindly tell me how to do it? |
@bigvzhang: The issue #15707 which is merged just deals with bugs in the rendering engine. The bug fixes which are needed later to implement the feature are now shipped with the next release. I do not see any scrolling code in the public. |
That's correct. I only ever got this to a WIP state. My notes are up in #1860 (comment). Not sure I'll have time to loop back around to polish for shipping any time soon. |
This comment was marked as spam.
This comment was marked as spam.
Yes, we absolutely need this feature, which "Command Prompt" provided before through its properties-buffer setting. We've been using "Command Prompt" console to print the application logs, which are long string lines. When we read those lines, we definitely don't want the text line wrapped, but want a horizontal scrolling. It is so bad that it lost this function, after "Command Prompt" was moved to Windows Terminal. By the way, we mostly use "Command Prompt" console to SSH to the Unix systems to read app log text files having the long string lines. If the lines are wrapped, no way you can read them. So, please, please add non-word-wrap & horizontal scrollbar back in Windows Terminal. |
Please add word wrapping. |
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as duplicate.
This comment was marked as duplicate.
This comment was marked as spam.
This comment was marked as spam.
I have the latest version of windows command line terminal. When executing a console app from VS that prints long line (just few characters off screen), there is no word wrap being applied nor horizontal scroll available also I can't find any relevant setting. The only way is to select and move mouse cursor to right direction to be able to see off screen text of the long line |
As mentioned in #6895 (comment), a workaround for now is to temporarily decrease the font size with |
That's not a good workaround. In many cases, e.g., that screenshot above, you'd have to lower the font to the point it was unreadable. |
keyword: add |
PowerShell table-formatted output often exceeds the horizontal width of even my full-width monitors. My current solution is to snap the window open a couple monitors wide (or more) to see everything. Wrapping output results in an [visually] unparseable mess. Definitely want a horizontal scroll bar (or even just the ability to scroll horizontall with a mouse h-scroll wheel). |
This is a must, as database engineer, sql output in CLIs (snowsql, snow, sqlplus etc) wraps results table. I may wonder whats the rationale here, but I suspect windows terminal maintainers don't have this SQL execution use case, or otherwise I'm sure they would fix this. Please:
|
just gonna be honest terminal is pretty cool and a genuine reason to not DESPISE windows 11. but its sort of a shame it word wrap cant be turned off. would love it if it could. #1860 (comment). it says that this might work but the last work on it was a year ago, despite it sort of working. is there anyway i could get copy from that branch to compile windows terminal and see if the changes work? |
Usually I use [CTRL + down mouse scrolling] until I get the text unwrapped (it works unless you have an excessive number of characters per line, else the text font size becomes so small that you have difficulty reading it; widening the window horizontally helps as well). |
This method does not add a horizontal scrollbar, but it will remove the annoying text wrapping. You need to put a large negative number in a "padding-right" property in the settings.json file. It is located on the path:
Or you can open it by clicking on the "open JSON file" button in the Windows terminal settings (in the lower left corner). You need to overwrite the "padding" property in the profiles:default section as follows:
|
Summary of the new feature/enhancement
Windows Terminal needs to have a configurable horizontal scrollbar (similar to Command Prompt) so that lines longer than the window width are actually readable by scrolling to the right, rather than being a big indecipherable word-wrapped mess as is typically seen on UNIX-like systems.
Proposed technical implementation details (optional)
Make it so.
The text was updated successfully, but these errors were encountered: