https://github.com/jfishe/powershell
PowerShell Core Profile
https://github.com/jfishe/powershell
powershell powershell-core powershell-profile
Last synced: 5 months ago
JSON representation
PowerShell Core Profile
- Host: GitHub
- URL: https://github.com/jfishe/powershell
- Owner: jfishe
- License: mit
- Created: 2020-06-06T17:47:09.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2025-06-19T14:42:16.000Z (8 months ago)
- Last Synced: 2025-06-19T15:38:18.487Z (8 months ago)
- Topics: powershell, powershell-core, powershell-profile
- Language: PowerShell
- Size: 104 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# PowerShell Core Profile
## PowerShell Core Profile Installation
`Install-Profile` installs module `PSDepend` and uses `Invoke-PSDepend` to
install the modules in [`profile.Depend.psd1`](profile.Depend.psd1).
[Starship: Cross-Shell Prompt](https://starship.rs/) works well in zsh,
powershell and pwsh.
```powershell
# 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"
}
```
## PowerShell Core Installation and Update
[Installing PowerShell on Windows](https://docs.microsoft.com/en-us/powershell/scripting/install/installing-powershell-core-on-windows)
describes the Microsoft recommended method.
```powershell
# Chocolatey can manage installation/updating.
choco install powershell-core `
--install-arguments='"ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL=1
REGISTER_MANIFEST=1
"' `
--packageparameters '"/CleanUpPath"'
```
## Windows Terminal
`WindowsTerminal` does not distinguish
`Shift+Enter` (`\u001b[13;2u`) or
`Ctrl+Enter` (`\u001b[13;5u`), and
reserves `Alt+Enter` for `Toggle fullscreen`.
[Reddit user desgreech posted a solution to r/neovim](https://www.reddit.com/r/neovim/comments/14rwpi2/windows_terminal_ccr_keymap_not_working/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button)
using `sendInput`.
The `JSON` schema splits actions and keys now,
so modify the solution accordingly in `settings.json`.
### Windows Terminal Preview
```powershell
$PreviewSettingsJSON = "$env:LOCALAPPDATA\Packages\Microsoft.WindowsTerminalPreview_*\LocalState\settings.json"
```
### Windows Terminal Release
```powershell
$SettingsJSON = "$env:LOCALAPPDATA\Packages\Microsoft.WindowsTerminal_*\LocalState\settings.json"
```
[WindowsTerminal\Install-WindowsTerminalSettings.ps1](WindowsTerminal\Install-WindowsTerminalSettings.ps1)
links `$SettingsJSON` to
[WindowsTerminal\settings.json](WindowsTerminal\settings.json), saving the
current `settings.json` as `settings.json.bak`.
### WindowsTerminal JSON Fragment Extensions
- [Windows Terminal Json Fragment Extensions](https://learn.microsoft.com/en-us/windows/terminal/json-fragment-extensions)