Why should Linux have all the fun?

Configuration

Find help here.

Not so obviously: the configuration file path is stored in $PROFILE. Usually that directory and file don’t exist, so they should be created.

if (!(Test-Path -Path $PROFILE)) {
  New-Item -ItemType File -Path $PROFILE -Force
}

source

Then use

code $PROFILE

Because Windows has stricter defaults than they did in the past, the ExecutionPolicy has to be updated. Please understand the change!

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

Help

Use Get-Help $topic and even Get-Help $topic -Online

Emacs bindings

I built up some serious muscle memory around terminals, especially with the use of Emacs keybindings (C-w, C-a, C-e, A-f, A-b) and PowerShell was not neglected.

Microsoft’s PowerShell team released and included PSReadLine since PowerShell 6+. More help can be found here.

Add the following code to your $PROFILE

Import-Module PSReadLine
Set-PSReadLineOption -EditMode Emacs