-
Notifications
You must be signed in to change notification settings - Fork 29.1k
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
Test: Terminal shell integration #141339
Comments
In the command palette, Yes that is correct re the output panel |
Can you please include a screen shot of the terminal @DonJayamanne and actually instead set the log level to debug to see if there are capabilities getting added? It should say something like:
|
@DonJayamanne there might be a problem with a linux terminal on a window backend, we can follow that up in an issue. I haven't tested it in WSL yet, only the test resolver. To clarify, for the Linux test item we would prefer to get coverage on a real linux local window. |
Don't have this, will try to get someone else to take this test item then.
Thanks, will file an issue for that #141599 |
@DonJayamanne on the tools website it says your only platform is Linux which you should fix up then (to just Windows?) since Linux there means Linux UI. |
Oh, thanks |
Refs: #133084
Complexity: 5
Authors: @Tyriar, @meganrogge
Create Issue
The terminal now features "shell integration" with the opt-in setting
terminal.integrated.enableShellIntegration
. The basics of this feature is that it runs a script in your shell of choice and injects invisible sequences at key points to tell the terminal about certain things, like where the prompt, command, output starts and what the current working directory (cwd) is. Shell integration activates by injecting arguments into the profile while it is starting up, you can view these injected arguments by looking forterminalInstance#ctor
in a trace log.Since a shell script needs to be written on a shell-by-shell basis, only the following are currently supported:
Currently these new insights into what's happening within the shell are used in the following features:
Run Recent Command
, running this after a terminal command executed is the easiest way to tell if shell integration is workingTerminal: Go to Recent Directory
terminal.integrated.splitCwd
settingcd
into a new directory, any links clicked below that will resolve against the new directory and any above that will use the old directory.Select/Scroll to Previous/Next Command
now use shell integration if it's available, otherwise they fallback to the old mechanism (which assumed it was a command anytime you press enter when the cursor was in the 3rd column or beyond)Test the feature on each of the shells assigned to your platform. Some things to try:
Here are some of the main limitations you may hit while testing:
$PS2
isn't supported on bash and zsh yet (line continuations should work on Windows) Support sequence for PS2 for commands containing line breaks #140665The text was updated successfully, but these errors were encountered: