F7History - Graphical Command History for PowerShell.
A PowerShell module providing a graphical Command History activated by the `F7` and `Shift-F7` keys. Built with Terminal.Gui and Out-ConsoleGridView by Tig. |
Install-Module
to install F7History
from the PowerShell Gallery:Install-Module -Name "F7History"
Import-Module
; adding this command to your PowerShell $profile
will ensure the F7History
is always available.Import-Module -Name "F7History"
F7
or Shift-F7
to invoke.At the PowerShell command line:
F7
to see the history for the current PowerShell instance.Shift-F7
to see the history for all PowerShell instances.Whatever was typed on the command line before hitting F7
or Shift-F7
will be used for the Out-ConsoleGridView
-Filter
` parameter.
When the Command Line History
window is displayed:
ENTER
to insert the selected item on the command line.ESC
to close the window without inserting anything on the command line.To change the key bindings, use the -ArgumentList
parameter when importing the module. For example, to use F6
and Shift-F6
instead of F7
and Shift-F7
:
Import-Module -Name "F7History" -ArgumentList @{Key = "F6"; AllKey = "Shift-F6"}
Terminal.Gui, upon which F7History is built, has an abstraction layer for OS and terminal platforms called ConsoleDrivers
.CursesDriver
is the default for Linux and macOS. On Windows, the default is WindowsDriver
. NetDriver
is a pure .NET implementation that works on all platforms (but is not as fast or full-featured as the platform-specific drivers).
To force F7History to use NetDriver
, set the $F7UseNetDriver
variable to $true
in your PowerShell session. When $F7UseNetDriver
is set to $true
, F7History will display NetDriver
on the status bar.
To enable diagnostics information, set the $F7EnableDiagnostics
variable to $true
in your PowerShell session. This will cause F7History to display version information in the status bar and sets both the -Debug
and -Verbose
parameters for Out-ConsoleGridView
.
F7History
is dependent on these modules which will automatically be installed if they are not already present: