Skip to content

Commit c8283ee

Browse files
Update readme and changelog (#143)
* Update readme for new maintainer and deprecation of `GraphicalTools` module * Update changelog in module
1 parent 7a04c0e commit c8283ee

File tree

2 files changed

+49
-62
lines changed

2 files changed

+49
-62
lines changed

README.md

Lines changed: 45 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -1,86 +1,58 @@
11
# GraphicalTools
22

3-
The GraphicalTools repo contains several different graphical-related PowerShell modules including:
3+
The GraphicalTools repo contains `Microsoft.PowerShell.ConsoleGuiTools`: a
4+
module that provides console-based GUI experiences based on
5+
[Terminal.Gui (gui.cs)](https://github.com/migueldeicaza/gui.cs).
46

5-
* `Microsoft.PowerShell.GraphicalTools` - A module that provides GUI experiences based on Avalonia.
6-
* `Microsoft.PowerShell.ConsoleGuiTools` - A module that provides console-based GUI experiences based on [Terminal.Gui (gui.cs)](https://github.com/migueldeicaza/gui.cs).
7+
Note that a module named `Microsoft.PowerShell.GraphicalTools` used to be built
8+
and published out of this repo, but per [#101](https://github.com/PowerShell/GraphicalTools/issues/101)
9+
it is deprecated and unmaintained until such time that it can be rewritten on
10+
top of [.NET MAUI](https://devblogs.microsoft.com/dotnet/introducing-net-multi-platform-app-ui/).
711

812
## Installation
913

10-
### Microsoft.PowerShell.GraphicalTools
11-
12-
```powershell
13-
Install-Module Microsoft.PowerShell.GraphicalTools
14-
```
15-
16-
### Microsoft.PowerShell.ConsoleGuiTools
17-
1814
```powershell
1915
Install-Module Microsoft.PowerShell.ConsoleGuiTools
2016
```
2117

2218
## Features
2319

24-
### Microsoft.PowerShell.GraphicalTools
25-
26-
[Out-GridView documentation](docs/Microsoft.PowerShell.ConsoleGuiTools/Out-GridView.md)
27-
28-
#### Cross-Platform
29-
|Linux |Windows |Mac |
30-
|---|---|---|
31-
| ![linux-gif](https://powershell.github.io/PowerShell-Blog/Images/2019-08-13-OutGridView-Returns/OutGridViewLinux.gif) | ![window-gif](https://powershell.github.io/PowerShell-Blog/Images/2019-08-13-OutGridView-Returns/OutGridViewWindows.gif) | ![macos-gif](https://powershell.github.io/PowerShell-Blog/Images/2019-08-13-OutGridView-Returns/OutGridViewMac.gif)|
32-
33-
- Out-Gridview
34-
- View and filter objects
35-
- Generate reusable filter code
36-
37-
### Microsoft.PowerShell.ConsoleGuiTools
38-
39-
[Out-ConsoleGridView documentation](docs/Microsoft.PowerShell.ConsoleGuiTools/Out-ConsoleGridView.md)
20+
Cross-platform! Use the cmdlet
21+
[`Out-ConsoleGridview`](docs/Microsoft.PowerShell.ConsoleGuiTools/Out-ConsoleGridView.md)
22+
to view and filter objects graphically.
4023

4124
![screenshot of Out-ConsoleGridView](docs/Microsoft.PowerShell.ConsoleGuiTools/ocgv.gif)
4225

43-
#### Cross-Platform
44-
45-
- Out-ConsoleGridview
46-
- View and filter objects
47-
4826
## Development
4927

50-
### 1. Install PowerShell 6.2+
28+
### 1. Install PowerShell 7.1+
5129

52-
Install PowerShell 6.2+ with [these instructions](https://github.com/PowerShell/PowerShell#get-powershell).
30+
Install PowerShell 7.1+ with [these instructions](https://github.com/PowerShell/PowerShell#get-powershell).
5331

54-
### 3. Clone the GitHub repository:
32+
### 2. Clone the GitHub repository
5533

5634
```powershell
5735
git clone https://github.com/PowerShell/GraphicalTools.git
5836
```
5937

60-
### 4. Install [Invoke-Build](https://github.com/nightroman/Invoke-Build)
38+
### 3. Install [Invoke-Build](https://github.com/nightroman/Invoke-Build)
6139

6240
```powershell
6341
Install-Module InvokeBuild -Scope CurrentUser
6442
```
6543

6644
Now you're ready to build the code. You can do so in one of two ways:
6745

68-
### Building the code from PowerShell
46+
### 4. Building the code from PowerShell
6947

7048
```powershell
71-
PS C:\path\to\GraphicalTools> Invoke-Build Build
49+
PS ./GraphicalTools> Invoke-Build Build -ModuleName Microsoft.PowerShell.ConsoleGuiTools
7250
```
7351

74-
> Note: You can build a single module using the -ModuleName parameter:
75-
>
76-
> ```powershell
77-
> Invoke-Build Build -ModuleName Microsoft.PowerShell.ConsoleGuiTools
78-
> ```
79-
8052
From there you can import the module that you just built for example:
8153

8254
```powershell
83-
Import-Module .\module\Microsoft.PowerShell.ConsoleGuiTools
55+
Import-Module ./module/Microsoft.PowerShell.ConsoleGuiTools
8456
```
8557

8658
And then run the cmdlet you want to test, for example:
@@ -90,52 +62,63 @@ Get-Process | Out-ConsoleGridView
9062
```
9163

9264
> NOTE: If you change the code and rebuild the project, you'll need to launch a
93-
> _new_ PowerShell process since the dll is already loaded and can't be unloaded.
94-
95-
### Debugging in Visual Studio Code
65+
> _new_ PowerShell process since the DLL is already loaded and can't be unloaded.
9666
67+
### 5. Debugging in Visual Studio Code
9768

9869
```powershell
99-
PS C:\path\to\GraphicalTools> code .
70+
PS ./GraphicalTools> code .
10071
```
10172

102-
Build by hitting `Ctrl-Shift-b` in VS Code.
73+
Build by hitting `Ctrl-Shift-B` in VS Code.
10374

10475
To debug:
10576

106-
In a Powershell session in the `c:\path\to\GraphicalTools` directory, run `pwsh` (thus nesting powershell).
77+
In a PowerShell session in the `./GraphicalTools` directory, run `pwsh` (thus
78+
nesting PowerShell).
10779

10880
Then do the folowing:
10981

11082
```powershell
111-
Import-Module .\module\Microsoft.PowerShell.ConsoleGuiTools
83+
Import-Module ./module/Microsoft.PowerShell.ConsoleGuiTools
11284
$pid
11385
```
11486

115-
This will import the latest built DLL and output the process ID you'll need for debugging. Copy this ID to the clipboard.
87+
This will import the latest built DLL and output the process ID you'll need
88+
for debugging. Copy this ID to the clipboard.
11689

117-
In VScode, set your breakpoints, etc... Then hit `F5`. In the VScode search box, paste the value printed by `$pid`. You'll see something like `pwsh.exe 18328`. Click that and the debug session will start.
90+
In VScode, set your breakpoints, etc. Then hit `F5`. In the VScode search
91+
box, paste the value printed by `$pid`. You'll see something like `pwsh.exe
92+
18328`. Click that and the debug session will start.
11893

119-
In the Powershell session run your commands; breakpoints will be hit, etc...
94+
In the PowerShell session run your commands; breakpoints will be hit, etc.
12095

121-
When done, run `exit` to exit the nested PowerShell and run `pwsh` again. This unloads the DLL. Repeat.
96+
When done, run `exit` to exit the nested PowerShell and run `pwsh` again.
97+
This unloads the DLL. Repeat.
12298

123-
## Contributions Welcome!
99+
## Contributions Welcome
124100

125-
We would love to incorporate community contributions into this project. If you would like to
126-
contribute code, documentation, tests, or bug reports, please read the [development section above](https://github.com/PowerShell/GraphicalTools#development) to learn more.
101+
We would love to incorporate community contributions into this project. If
102+
you would like to contribute code, documentation, tests, or bug reports,
103+
please read the [development section above](https://github.com/PowerShell/GraphicalTools#development)
104+
to learn more.
127105

128-
## Microsoft.PowerShell.GraphicalTools Architecture
106+
## (Deprecated) Microsoft.PowerShell.GraphicalTools Architecture
129107

130-
Due to the quirks of the PowerShell threading implementation, the design of GUIs in this application are non-standard. The cmdlet invokes an Avalonia application as a separate process to guarantee the GUI is running on the main thread. Graphical tools therefore consists of 3 .NET Projects.
108+
Due to the quirks of the PowerShell threading implementation, the design of
109+
GUIs in this application are non-standard. The cmdlet invokes an Avalonia
110+
application as a separate process to guarantee the GUI is running on the main
111+
thread. Graphical tools therefore consists of 3 .NET Projects.
131112

132113
- Microsoft.PowerShell.GraphicalTools - Cmdlet implementations
133114
- OutGridView.Gui - Implementation of the Out-GridView window
134115
- OutGridView.Models - Contains data contracts between the GUI & Cmdlet
135116

136117
## Maintainers
137118

138-
- [Tyler Leonhardt](https://github.com/tylerleonhardt) - [@TylerLeonhardt](http://twitter.com/tylerleonhardt)
119+
- [Andrew Schwartzmeyer](https://andschwa.com) - [@andschwa](https://github.com/andschwa)
120+
121+
Originally authored by [Tyler Leonhardt](http://twitter.com/tylerleonhardt).
139122

140123
## License
141124

src/Microsoft.PowerShell.ConsoleGuiTools/Microsoft.PowerShell.ConsoleGuiTools.psd1

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,10 @@ PrivateData = @{
108108
109109
## v0.6.2
110110
111+
Update Terminal.Gui to 1.0.
112+
113+
Disable mouse mode to fix bug with mouse movement being printed to console.
114+
111115
Gracefully fail when running in remote sessions.
112116
113117
## v0.6.1

0 commit comments

Comments
 (0)