Skip to content
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

Opening Terminal inside Windows Explorer as a pane (or vice-versa) #5591

Open
moattarwork opened this issue Apr 27, 2020 · 10 comments
Open

Opening Terminal inside Windows Explorer as a pane (or vice-versa) #5591

moattarwork opened this issue Apr 27, 2020 · 10 comments
Labels
Area-Extensibility A feature that would ideally be fulfilled by us having an extension model. Issue-Feature Complex enough to require an in depth planning process and actual budgeted, scheduled work. Product-Terminal The new Windows Terminal.
Milestone

Comments

@moattarwork
Copy link

Description of the new feature/enhancement

All the CMD terminals can be initiate from windows explorer which creates two windows to work with. In some development environments such as VSCode etc, you can combine the terminal to your IDE which is very helpful.

It would be very helpful if we can open the terminal in Windows Explorer so we can have access visually to the files and through the terminal. Also, they can be synced when we change the folder to the other location.

@moattarwork moattarwork added the Issue-Feature Complex enough to require an in depth planning process and actual budgeted, scheduled work. label Apr 27, 2020
@ghost ghost added Needs-Triage It's a new issue that the core contributor team needs to triage at the next triage meeting Needs-Tag-Fix Doesn't match tag requirements labels Apr 27, 2020
@zadjii-msft
Copy link
Member

So this is a neat idea, though something that would be largely really hard to implement.

Say we were able to put a Terminal instance within explorer.exe. When the user navigates files in explorer, I'm not sure there's any good way for something like explorer to be able to change the working directory of cmd or powershell. Further, what would happen if there was something that wasn't a shell running in the Terminal instance? What if you were running the python REPL? What if you were running some sort of webserver, or msbuild? What if you ran ssh user@some-other-server in the Terminal? What would changing the directory in explorer.exe do then?

I think largely it would be really hard for changing the directory in explorer to have an effect on the Terminal that would be embedded in it. It would probably be at best capable of starting in the current directory that explorer was in.

It's also hard for the Terminal to report which directory it is in, and when the directory changes, for much of the same reason. I'd refer to #3158 for more details on this topic.

That being said, I think it would be a cool extension once #3158 landed for the Terminal to be able to display the CWD contents. For that reason alone, I'm linking this to #4000

@zadjii-msft zadjii-msft added Area-Extensibility A feature that would ideally be fulfilled by us having an extension model. Product-Terminal The new Windows Terminal. labels Apr 27, 2020
@ghost ghost removed the Needs-Tag-Fix Doesn't match tag requirements label Apr 27, 2020
@zadjii-msft zadjii-msft added this to the Terminal Backlog milestone Apr 27, 2020
@DHowett-MSFT DHowett-MSFT removed the Needs-Triage It's a new issue that the core contributor team needs to triage at the next triage meeting label Apr 28, 2020
@aminya
Copy link

aminya commented Jul 24, 2020

I wish there was a collapsable pane on the sides of the terminal that showed an explorer, and I could navigate through the files and folders using it and tell the terminal to cd here, etc.

image

@just1a-person
Copy link

Idea: Preview Pane Handler?

@josalhor
Copy link

Hello, I come from microsoft/PowerToys#2555 .

I will try to provide a summary of that issue:
Dolphin handles this feature with the following behaviour:

  • If the console is executing python REPL / ssh then changing folders doesn't change the state of the console
  • If not, on changing folder the explorer issues a Ctrl+C (^C) to the explorer to clear it from any written text by the user then inputs a change directory command (i.e " cd /home/josalhor/Desktop") and an Enter to execute.

You can see an example of what that looks like here. This allows developers to quickly see which files they have available at the current folder much faster than if they were to manually parse that information from a console. It also helps while exploring an unknown directory structure or with file visualization (like with images or markdown). Ideally it would be integrated with WSL and would allow for better interaction with the Linux Subsystem.

@zadjii-msft zadjii-msft modified the milestones: Terminal Backlog, Icebox Dec 14, 2020
@zadjii-msft zadjii-msft changed the title Opening the windows terminal inside Windows Explorer rather than from windows Explorer Opening Terminal inside Windows Explorer as a pane (or vice-versa) Nov 8, 2022
@zadjii-msft
Copy link
Member

idle thought: I wonder if it'd be possible to have a (hypothetical) Terminal extension "drive" an explorer window. Like, have it pop up a little window picker, and then any time the pane's CWD gets set via shell integration, the extension goes and manually changes that explorer window's path.

@zadjii-msft
Copy link
Member

A crazy idea from Teams

I wonder if there's an alternate future where do do the "window parenting" thing (as an actual feature), much like gvim --windowid does (wt --experimental.windowid 0xf00)
that one, window parenting, offers some interesting opportunities. you could even drag INTO a window hosted inside another window
which would be pretty neat. dock terminal inside explorer, yeah? imagine
somebody COULD write a shell extension to put a terminal inside explorer that way

@alensiljak
Copy link

alensiljak commented Oct 19, 2023

I would appreciate with a "start small" approach and have an option of adding a Terminal tab in Windows Explorer. And, when I say tab, I mean just another tab - which seems to be a new feature in Explorer anyway.

image

There are tabs also in the terminal window and it can run various shells.

image

So, why not simply provide the possibility to open the current folder as a new tab in Windows Explorer? No sync to anything. Just another tab, hosting a shell (default Terminal?), starting from the location where we chose an action to open it.
All the other details can be worked-out (if needed!) at a later stage.

Edit: I think this is actually already happening. Dragging a tab from the Terminal window to the Explorer window does indeed make a space for the new tab. However, the drop operation is not handled yet. But it seems to be moving in that direction.

@zadjii-msft
Copy link
Member

Edit: I think this is actually already happening. Dragging a tab from the Terminal window to the Explorer window does indeed make a space for the new tab. However, the drop operation is not handled yet. But it seems to be moving in that direction

To be very clear: this is not happening any time soon. The only reason that happens is that the two different TabViews in Terminal and Explorer both by default act like they can accept drag/drops from any other tabbed application, when they really can't. Even dragging a terminal tab over VsCode will change the feedback to "Move↗", as if vscode could accept the drag (it can't). This is one of the (many) bugs we've got to sort out on the WinUI side.

@aereaco
Copy link

aereaco commented Dec 11, 2023

Something similar to this would be awesome

dolphin-terminal

@klaribot
Copy link

This would be an incredibly useful addition to the Explorer if it had a terminal pane just like KDE's dolphin file browser, where changing folders/directories within Explorer would keep the current working directory of the attached terminal in sync.

And it would be even more incredible of a feature if what @zadjii-msft commented on was actually possible.

I know they mean that this is a bug, not a feature, and needs to be addressed, but it would be really cool if it were addressed in a way to make that bug work as the accidental feature instead of patching it out, y'know? One can dream, I suppose.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area-Extensibility A feature that would ideally be fulfilled by us having an extension model. Issue-Feature Complex enough to require an in depth planning process and actual budgeted, scheduled work. Product-Terminal The new Windows Terminal.
Projects
None yet
Development

No branches or pull requests

10 participants