$global:IsOutputANSICompatible = ( $PSVersionTable.Platform -eq "Unix" ) -or ( ([int]((Get-CimInstance -ClassName Win32_OperatingSystem).Version -split '\.')[0]) -ge 10 ) -or ( ($env:ConEmuANSI -eq 'ON') -and ($Host.Name -eq 'ConsoleHost' ) ) Get-Command Set-PSReadLineKeyHandler -ErrorAction SilentlyContinue | ForEach-Object { Set-PSReadLineKeyHandler -Key Tab -Function MenuComplete } if( (Get-Command Set-PoshPrompt -ErrorAction SilentlyContinue) -and $IsOutputANSICompatible ) { $local:poshPrompt = Join-Path $HOME ".oh-my-posh.omp.json" if( -not (Test-Path $poshPrompt) ) { $poshPrompt = "slim" } Set-PoshPrompt -Theme $poshPrompt } elseif( Get-Command Set-Theme -ErrorAction SilentlyContinue ) { Set-Theme Paradox } elseif( Get-Module -ListAvailable posh-git -ErrorAction SilentlyContinue ) { Import-Module posh-git $GitPromptSettings.AnsiConsole = $IsOutputANSICompatible }