dotfiles/platforms/win
2024-12-25 05:57:41 +00:00
..
ahk Sync: from windows 2024-12-09 22:31:29 +00:00
cmd sync: from Windows 2024-12-19 20:08:33 +00:00
komorebi Merge branch 'master' into reorg 2024-12-01 07:41:57 +00:00
fastfetch.jsonc Add lazygit keybindings 2024-12-25 05:57:41 +00:00
Microsoft.PowerShell_profile.ps1 Sync: from windows 2024-12-09 22:31:29 +00:00
neovide.toml Merge branch 'master' into reorg 2024-12-01 07:41:57 +00:00
readme.md refractor: Reorganise dotfiles structures 2024-11-29 23:28:18 +00:00
SumatraPDF-shortcuts.txt sync: from Windows 2024-12-05 2024-12-05 20:08:57 +00:00
vsvimrc Merge branch 'master' into reorg 2024-12-01 07:41:57 +00:00
WindowsTerminal.json refractor: Reorganise dotfiles structures 2024-11-29 23:28:18 +00:00
wslconfig sync: from Windows 2024-12-19 20:08:33 +00:00

Windows dotfiles

By following the Windows Directory Standard, assign the following directories corresponding to $XDG_CONFIG in Unix:

  • %APPDATA% - $XDG_CONFIG_HOME (default: %USERPROFILE%\AppData\Roaming)

PowerShell Profile

This is the PowerShell Core profile, not the legacy Windows PowerShell profile.

By default, PowerShell profile is stored in ~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1.

It is convenient to use $PROFILE to locate the profile file.

Test-Path $PROFILE

To link the profile file:

New-Item -ItemType SymbolicLink -Path $PROFILE -Target "$DOTFILES\win\Microsoft.PowerShell_profile.ps1" -Force

I use starship to customize the prompt, which is located in .dotfiles/.config/starship/starship_pwsh.toml. This prompt config is cross-platform for powershell core, since I use the promp to identify the shell.

.wslconfig - WSL Configuration

.wslconfig only supports ~/.wslconfig as the configuration path

New-Item -ItemType SymbolicLink -Path "~\.wslconfig" -Target "$DOTFILES\win\.wslconfig" -Force

Windows Terminal

Use Hard Link to sync Windows Terminal Settings since it doesn't support symlink.

New-Item -ItemType HardLink -Path "$Env:LocalAppData\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json" -Target "$DOTFILES\win\WindowsTerminal.json" -Force

Neovide

Neovide configuration is (only) stored in %APPDATA%\neovide\config.toml

New-Item -ItemType SymbolicLink -Path "$Env:AppData\neovide\config.toml" -Target "$DOTFILES\win\neovide.toml" -Force