PowerShell / vscode-powershell

Provides PowerShell language and debugging support for Visual Studio Code
https://marketplace.visualstudio.com/items/ms-vscode.PowerShell
MIT License
1.69k stars 481 forks source link

Show-Command like panel #1405

Open corbob opened 6 years ago

corbob commented 6 years ago

Summary of the new feature

ISE has a pane for Show-Command. It would be good to have something similar to this in VS Code.

Numerous users have expressed the lack of this feature for why they don't use VS Code for PowerShell.

Proposed technical implementation details (optional)

A side bar view for this seems to make the most sense.

corbob commented 5 years ago

Just putting some thoughts out there so I don't lose them.

I've created a project on my fork for this, adding cards for small chunks as I think of them or encounter someone mentioning it. The project is here: https://github.com/corbob/vscode-powershell/projects/1

Unfortunately due to this issue: https://github.com/Microsoft/vscode/issues/50062 We may not be able to get searching working just yet. My focus will be around what's available to us today and if we get search/filter in the future then we can work on that.

Ayanmullick commented 2 years ago

@rjmholt, @andschwa, PFB the features missing from the VSC PowerShell extension's Command Explorer, as discussed during the Community call for October 21.




1. Filter by modules

2. Search for specific cmdlets

3. Fill out specific parameter sets

4. Add common parameters

5. Insert filled out cmdlet

SeeminglyScience commented 2 years ago

Personally I'd really like to see some work put into this extension's API to give the community the tools to provide a separate extension with this functionality.

nthoman commented 1 year ago

If you want Visual Studio Code and PS7 to be successful you need to include this functionality into the plugin. ISE mode and the command bar has been vital to grow my skills (and many others) in PowerShell since its introduction. It allows one to quickly filter commands and find examples how to use them correctly. By excluding this functionality you are increasing the barrier of entry for PowerShell 7. If you are experienced with PowerShell then VSC is fine and you can get by. I am constantly teaching inexperienced staff on my team on how useful PowerShell can be to simplify repetitive operational tasks and encourage them to get familiar with it. However I find the VSC way too "opaque" and usually just fall back to the original ISE.

For example... in the new way... how can one filter all the commands (Visually) related to SharePoint Online in the Command Explorer? In ISE I could just type "SPO" or filter the module to "Microsoft.Online.SharePoint.PowerShell". Being able to browse through this list and click on each command helps one learn the capabilities quickly. I remember sitting through a lecture during Ignite\TechEd in the largest theater when a lead developer was demonstrating PowerShell's use with Azure and had to do this live because the command he was trying to demo was not working right and said "Even the creator has to look things up". (Paraphrasing... it was years ago.)

You need to keep your "newbie" hats on when releasing tools. ISE was the perfect "Newbie" tool and is still far superior till what is available in 7 right now. However... don't get me wrong... I love where you are going with VSC. I really like how if you do know the command you want to use... it displays your options as you type. Very slick.

n0spaces commented 1 month ago

I decided to take a stab at this, and I built a command info view panel that works fairly well, aside from styling and probably some edge cases. I think I agree that the extension API should be improved so this could be implemented in a separate extension, but if you'd like this to be part of the main extension, then I'd be happy to clean this up and submit a PR!

image

Ayanmullick commented 1 month ago

Looks good, @n0spaces. Can one filter the cmdlets by module name?

n0spaces commented 1 month ago

Looks good, @n0spaces. Can one filter the cmdlets by module name?

No, I'm just focusing on the Command Info panel for now, although adding a filter to the Command Explorer sounds pretty straightforward.

Worth noting that you can exclude modules in the configuration thanks to #1686, but you can't filter in the UI yet.