mirror of
				https://github.com/openimsdk/open-im-server.git
				synced 2025-10-26 21:22:16 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			141 lines
		
	
	
		
			4.3 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			141 lines
		
	
	
		
			4.3 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/usr/bin/env bash
 | |
| 
 | |
| # Copyright © 2023 OpenIM. All rights reserved.
 | |
| #
 | |
| # Licensed under the Apache License, Version 2.0 (the "License");
 | |
| # you may not use this file except in compliance with the License.
 | |
| # You may obtain a copy of the License at
 | |
| #
 | |
| #     http://www.apache.org/licenses/LICENSE-2.0
 | |
| #
 | |
| # Unless required by applicable law or agreed to in writing, software
 | |
| # distributed under the License is distributed on an "AS IS" BASIS,
 | |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | |
| # See the License for the specific language governing permissions and
 | |
| # limitations under the License.
 | |
| 
 | |
| # this script is used to install the dependencies of the project
 | |
| #
 | |
| # Usage: `scripts/color.sh`.
 | |
| ################################################################################
 | |
| 
 | |
| # shellcheck disable=SC2034
 | |
| if [[ ! -v COLOR_OPEN ]]; then
 | |
|     COLOR_OPEN=1
 | |
| fi
 | |
| 
 | |
| # Function for colored echo
 | |
| openim::color::echo() {
 | |
|     COLOR=$1
 | |
|     [ $COLOR_OPEN -eq 1 ]  && echo -e "${COLOR} $(date '+%Y-%m-%d %H:%M:%S') $@ ${COLOR_SUFFIX}"
 | |
|     shift
 | |
| }
 | |
| 
 | |
| # Define color variables
 | |
| # --- Feature --- 
 | |
| COLOR_NORMAL='\033[0m';COLOR_BOLD='\033[1m';COLOR_DIM='\033[2m';COLOR_UNDER='\033[4m';
 | |
| COLOR_ITALIC='\033[3m';COLOR_NOITALIC='\033[23m';COLOR_BLINK='\033[5m';
 | |
| COLOR_REVERSE='\033[7m';COLOR_CONCEAL='\033[8m';COLOR_NOBOLD='\033[22m';
 | |
| COLOR_NOUNDER='\033[24m';COLOR_NOBLINK='\033[25m';
 | |
| 
 | |
| # --- Front color --- 
 | |
| COLOR_BLACK='\033[30m';
 | |
| COLOR_RED='\033[31m';
 | |
| COLOR_GREEN='\033[32m';
 | |
| COLOR_YELLOW='\033[33m';
 | |
| COLOR_BLUE='\033[34m';
 | |
| COLOR_MAGENTA='\033[35m';
 | |
| COLOR_CYAN='\033[36m';
 | |
| COLOR_WHITE='\033[37m';
 | |
| 
 | |
| # --- background color --- 
 | |
| COLOR_BBLACK='\033[40m';COLOR_BRED='\033[41m';
 | |
| COLOR_BGREEN='\033[42m';COLOR_BYELLOW='\033[43m';
 | |
| COLOR_BBLUE='\033[44m';COLOR_BMAGENTA='\033[45m';
 | |
| COLOR_BCYAN='\033[46m';COLOR_BWHITE='\033[47m';
 | |
| 
 | |
| # --- Color definitions --- 
 | |
| # Color definitions
 | |
| COLOR_SUFFIX="\033[0m"      # End all colors and special effects
 | |
| BLACK_PREFIX="\033[30m"     # Black prefix
 | |
| RED_PREFIX="\033[31m"       # Red prefix
 | |
| GREEN_PREFIX="\033[32m"     # Green prefix
 | |
| YELLOW_PREFIX="\033[33m"    # Yellow prefix
 | |
| BLUE_PREFIX="\033[34m"      # Blue prefix
 | |
| SKY_BLUE_PREFIX="\033[36m"  # Sky blue prefix
 | |
| WHITE_PREFIX="\033[37m"     # White prefix
 | |
| BOLD_PREFIX="\033[1m"       # Bold prefix
 | |
| UNDERLINE_PREFIX="\033[4m"  # Underline prefix
 | |
| ITALIC_PREFIX="\033[3m"     # Italic prefix
 | |
| CYAN_PREFIX="\033[0;36m"     # Cyan prefix
 | |
| 
 | |
| # Print colors you can use
 | |
| openim::color::print_color()
 | |
| {
 | |
|   echo
 | |
|   echo -e ${bmagenta}--back-color:${normal}
 | |
|   echo "bblack; bgreen; bblue; bcyan; bred; byellow; bmagenta; bwhite"
 | |
|   echo
 | |
|   echo -e ${red}--font-color:${normal}
 | |
|   echo "black; red; green; yellow; blue; magenta; cyan; white"
 | |
|   echo
 | |
|   echo -e ${bold}--font:${normal}
 | |
|   echo "normal; italic; reverse; nounder; bold; noitalic; conceal; noblink;
 | |
|   dim; blink; nobold; under"
 | |
|   echo
 | |
| }
 | |
| 
 | |
| # test functions
 | |
| openim::color::test() {
 | |
|     echo "Starting the color tests..."
 | |
| 
 | |
|     echo "Testing normal echo without color"
 | |
|     openim::color::echo $COLOR_NORMAL "This is a normal text"
 | |
| 
 | |
|     echo "Testing bold echo"
 | |
|     openim::color::echo $COLOR_BOLD "This is bold text"
 | |
| 
 | |
|     echo "Testing dim echo"
 | |
|     openim::color::echo $COLOR_DIM "This is dim text"
 | |
| 
 | |
|     echo "Testing underlined echo"
 | |
|     openim::color::echo $COLOR_UNDER "This is underlined text"
 | |
| 
 | |
|     echo "Testing italic echo"
 | |
|     openim::color::echo $COLOR_ITALIC "This is italic text"
 | |
| 
 | |
|     echo "Testing red color"
 | |
|     openim::color::echo $COLOR_RED "This is red text"
 | |
| 
 | |
|     echo "Testing green color"
 | |
|     openim::color::echo $COLOR_GREEN "This is green text"
 | |
| 
 | |
|     echo "Testing yellow color"
 | |
|     openim::color::echo $COLOR_YELLOW "This is yellow text"
 | |
| 
 | |
|     echo "Testing blue color"
 | |
|     openim::color::echo $COLOR_BLUE "This is blue text"
 | |
| 
 | |
|     echo "Testing magenta color"
 | |
|     openim::color::echo $COLOR_MAGENTA "This is magenta text"
 | |
| 
 | |
|     echo "Testing cyan color"
 | |
|     openim::color::echo $COLOR_CYAN "This is cyan text"
 | |
| 
 | |
|     echo "Testing black background"
 | |
|     openim::color::echo $COLOR_BBLACK "This is text with black background"
 | |
| 
 | |
|     echo "Testing red background"
 | |
|     openim::color::echo $COLOR_BRED "This is text with red background"
 | |
| 
 | |
|     echo "Testing green background"
 | |
|     openim::color::echo $COLOR_BGREEN "This is text with green background"
 | |
| 
 | |
|     echo "Testing blue background"
 | |
|     openim::color::echo $COLOR_BBLUE "This is text with blue background"
 | |
| 
 | |
|     echo "All tests completed!"
 | |
| }
 | |
| 
 | |
| # openim::color::test
 |