-
Notifications
You must be signed in to change notification settings - Fork 38.9k
Description
We now have a new more accessible buffer view, we could shell integration to add semantics to the buffer such that terminal commands can be navigated via header tags and it's split up into sections. To do this, xterm.js could delegate the creation of the elements to VS Code as it doesn't have knowledge about shell integration.
For example the DOM structure could be:
<h2>command 1</h2>
<div>command 1 output</div>
<h2>command 2</h2>
<div>command 2 output</div>
...
<h2>last command</h2>
<div>
command 1 output
<div tabindex="0">cursor line</div>
</div>
The special line for the cursor is an idea to help the screen reader announce the cursor line first when entering the mode. This could be any line though, we should leave it up to vscode where to position the focused line. A non-screen reader example is ctrl/cmd+up to navigate between commands and then shift+tab to enter keyboard selection at that line, instead of scroll resetting.