Skip to content

krymtkts/pocof

Repository files navigation

pocof

PowerShell Gallery PowerShell Gallery Test main status codecov Top Language License: MIT

An interactive pipeline filtering Cmdlet for PowerShell written in F#.

pocof implements .NET Standard 2.0 for broad compatibility across Windows, Linux, and Mac. It also ships an optimized .NET 8.0 build for PowerShell 7.4 (LTS, .NET 8.0) and later. On PowerShell 7.4 and later, pocof uses the optimized .NET 8.0 binary. On older PowerShell versions, it uses the .NET Standard 2.0 binary.

A fork of poco by jasonmarcher. poco based on PowerShell peco by yumura. PowerShell peco is a port of peco for PowerShell.

Installation

PowerShell Gallery | pocof

# PowerShellGet 2.x
Install-Module -Name pocof -AllowPrerelease

# PSResourceGet (also known as PowerShellGet 3.0)
Install-PSResource -Name pocof -Prerelease

Motivation

To learn how to write Cmdlet in F#. Also to add my own flavor to poco which I often use.

Cmdlet help

See Select-Pocof.md

Disclaimer

  • I mainly use Windows. I tested pocof in Linux on Ubuntu on WSL. I have not tested Mac as I do not have a Mac machine. If you encounter any bugs depends on Linux or Mac, please create an issue with details.
  • The help for some parameters output raw Markdown because PlatyPS cannot render table and bullet list to MAML.
  • Windows PowerShell ISE is not supported.

Publishing module

Build and publish to PowerShell Gallery. To avoid accidents, dry runs mode is default.

# DryRun.
Invoke-psake -taskList Release -parameters @{'Stage'='Release'}

# Publish.
Invoke-psake -taskList Release -parameters @{'Stage'='Release';'DryRun'=$false}

Recommended to do these in new PowerShell process. After you import pocof, cannot release FSharp.Core.dll even if you invoke Remove-Module.

About

An interactive pipeline filtering Cmdlet for PowerShell written in F#.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •