PowerShell Core Profile
Install-Profile
installs module PSDepend
and uses Invoke-PSDepend
to
install the modules in profile.Depend.psd1
.
Starship: Cross-Shell Prompt works well in zsh,
powershell and pwsh.
# Assume Documents\PowerShell does not exist.
$ProfileDir = Split-Path "$PROFILE"
git clone https://github.com/jfishe/PowerShell.git "$ProfileDir"
if ($?) {
pushd $ProfileDir
# Install `direcolors`.
git submodule update --init
cmd /c "mklink $HOME\.dircolors $ProfileDir\PowerShell\dircolors-solarized\dircolors.ansi-universal"
.\Install-Profile.ps1
} else {
Write-Error -Message "Failed to install $ProfileDir"
}
Installing PowerShell on Windows
describes the Microsoft recommended method.
# Chocolatey can manage installation/updating.
choco install powershell-core `
--install-arguments='"ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL=1
REGISTER_MANIFEST=1
"' `
--packageparameters '"/CleanUpPath"'
WindowsTerminal
does not distinguishShift+Enter
(\u001b[13;2u
) orCtrl+Enter
(\u001b[13;5u
), and
reserves Alt+Enter
for Toggle fullscreen
.
Reddit user desgreech posted a solution to r/neovim
using sendInput
.
The JSON
schema splits actions and keys now,
so modify the solution accordingly in settings.json
.
$PreviewSettingsJSON = "$env:LOCALAPPDATA\Packages\Microsoft.WindowsTerminalPreview_*\LocalState\settings.json"
$SettingsJSON = "$env:LOCALAPPDATA\Packages\Microsoft.WindowsTerminal_*\LocalState\settings.json"
WindowsTerminal\Install-WindowsTerminalSettings.ps1
links $SettingsJSON
to
WindowsTerminal\settings.json, saving the
current settings.json
as settings.json.bak
.