libs/modules/colortune/Get-ColorTune.psm1
|
Function Get-ColorTune(){ [CmdletBinding()] [OutputType([string])] param( [parameter(mandatory=$true)] [string]$text, [parameter(mandatory=$false)] [ValidateSet( "blue", "yellow", "green", "red", "white", "black", "cyan", "magenta", "gray", "darkgray", "darkblue", "darkyellow", "darkgreen", "darkred", "darkcyan", "darkmagenta", ignorecase =$true)] $color = "white" ) Begin{ } process{ if($PSVersionTable.PSVersion.Major -eq 5){ # Define the escape sequence for color formatting $escapeSequence = [char]27 # Define color codes $colorReset = "${escapeSequence}[0m" # Reset color $colorRed = "${escapeSequence}[31m" # Red $colorGreen = "${escapeSequence}[32m" # Green $colorYellow = "${escapeSequence}[33m" # Yellow $colorBlue = "${escapeSequence}[34m" # Blue $colorMagenta = "${escapeSequence}[35m" # Magenta $colorCyan = "${escapeSequence}[36m" # Cyan $colorWhite = "${escapeSequence}[37m" # White $colorDarkGray = "${escapeSequence}[90m" # Dark Gray $colorDarkRed = "${escapeSequence}[91m" # Dark Red $colorDarkGreen = "${escapeSequence}[92m" # Dark Green $colorDarkYellow = "${escapeSequence}[93m" # Dark Yellow $colorDarkBlue = "${escapeSequence}[94m" # Dark Blue $colorDarkMagenta = "${escapeSequence}[95m" # Dark Magenta $colorDarkCyan = "${escapeSequence}[96m" # Dark Cyan $colorBlack = "${escapeSequence}[97m" # Black switch($color){ "red" { return "$colorRed$text$colorReset"} "yellow" { return "$colorYellow$text$colorReset"} "green" { return "$colorGreen$text$colorReset"} "blue" { return "$colorBlue$text$colorReset"} "white" { return "$colorWhite$text$colorReset"} "black" { return "$colorBlack$text$colorReset"} "cyan" { return "$colorCyan$text$colorReset"} "magenta" { return "$colorMagenta$text$colorReset"} "gray" { return "$colorDarkGray$text$colorReset"} "darkgray" { return "$colorDarkGray$text$colorReset"} "darkblue" { return "$colorDarkBlue$text$colorReset"} "darkyellow" { return "$colorDarkYellow$text$colorReset"} "darkgreen" { return "$colorDarkGreen$text$colorReset"} "darkred" { return "$colorDarkRed$text$colorReset"} "darkcyan" { return "$colorDarkCyan$text$colorReset"} "darkmagenta" { return "$colorDarkMagenta$text$colorReset"} default { return "$colorWhite$text$colorReset" } } } else{ switch($color){ "blue" { return "`e[34m$text`e[0m"} "yellow" { return "`e[33m$text`e[0m"} "green" { return "`e[32m$text`e[0m"} "red" { return "`e[31m$text`e[0m"} "white" { return "`e[37m$text`e[0m"} "black" { return "`e[30m$text`e[0m"} "cyan" { return "`e[36m$text`e[0m"} "magenta" { return "`e[35m$text`e[0m"} "gray" { return "`e[90m$text`e[0m"} "darkgray" { return "`e[90m$text`e[0m"} "darkblue" { return "`e[34m$text`e[0m"} "darkyellow" { return "`e[33m$text`e[0m"} "darkgreen" { return "`e[32m$text`e[0m"} "darkred" { return "`e[31m$text`e[0m"} "darkcyan" { return "`e[36m$text`e[0m"} "darkmagenta" { return "`e[35m$text`e[0m"} default { return "`e[37m$text`e[0m"} } } } } Export-ModuleMember -Function Get-ColorTune |